单核心的CPU和多核心的CPU实现多任务的基本方法。 即使多核心的CPU真正实现了并行多任务的工作,但是任务的数量远多于核心数,因此,多任务一般是将多个任务轮流分配到每个核心上执行。 实现多任务的方法可以从几个方面着手: 多进程、多线程、协程、多进程+多线程 并行和并发的概念(提纲) 线程(thre ...
分类:
编程语言 时间:
2019-03-04 20:39:37
阅读次数:
177
java 多线程40个问题汇总,自己也记录一份,如有侵权,联系删除 ref from :http://www.cnblogs.com/xrq730/p/5060921.html 1、多线程作用 利用多核CPU优势 防止阻塞 便于建模(大任务拆分为小任务,分别处理) 2、创建线程的方式 继承Threa ...
分类:
编程语言 时间:
2019-02-25 15:03:00
阅读次数:
212
Volatile实现原则 有volatile变量修饰的共享变量进行写操作的时候,会多出一行以Lock为前缀的汇编代码, 这个前缀指令会在多核处理器下引发两件事情: 1.将当前处理器缓存行的数据写回到系统内存。 2.这个写回内存的操作会使在其他CPU里缓存了该内存地址的数据无效。 概括性解释 为了提高 ...
分类:
其他好文 时间:
2019-02-24 17:28:14
阅读次数:
201
multiprocessing模块介绍 python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源(os.cpu_count()查看),在python中大部分情况需要使用多进程。Python提供了multiprocessing。 multiprocessing模块用来开启子进程,并在 ...
分类:
系统相关 时间:
2019-02-20 09:17:12
阅读次数:
220
协程 概念 由用户自己控制一个任务遇到io阻塞了就切换另外一个任务去执行,以此来提升效率 单线程的并发。用户态的轻量级线程,是由用户自己控制调度的。 优点: 协程的切换开销更小,属于程序级别的切换,操作系统完全感知不到,因而更加轻量级 最大限度利用cpu 缺点: 本质是单线程下,无法利用多核, 协程 ...
分类:
其他好文 时间:
2019-02-17 22:21:59
阅读次数:
171
1.如果在其他语言环境中写的代码很烂,那么换一门语言很可能情况更糟,因为是涉及到基本功、工程能力和心思逻辑。 2.一定要了解语言解决的问题(比如:多核并发机制性能高、省机器、简洁易学、资料少),优势是否真的解决了问题,劣势是否可以承受,投入产出的性价比怎样,否则不如观望。 3.选择合适的入门资料非常 ...
分类:
编程语言 时间:
2019-02-14 23:49:42
阅读次数:
215
一、 Java并发编程的三个概念 原子性:一个或多个操作要么全部执行成功要么全部执行失败; 可见性:当多个线程访问同一个变量时,如果其中一个线程对其作了修改,其他线程能立即获取到最新的值; 有序性:程序执行的顺序按照代码的先后顺序执行(处理器可能会对指令进行重排序); 二、单核CPU到多核CPU的变 ...
分类:
编程语言 时间:
2019-02-10 09:32:59
阅读次数:
210
1.到底什么是线程?什么是进程? Python自己没有这玩意,Python中调用的操作系统的线程和进程. 2.Python多线程情况下: 计算密集型操作:效率低,Python内置的一个全局解释器锁,锁的作用就是保证同一时刻一个进程中只有一个线程可以被cpu调度,多线程无法利用多核优势,可以通过多进程 ...
分类:
编程语言 时间:
2019-02-04 12:51:01
阅读次数:
221
恢复内容开始 一、go特点 一个文件属于一个包 package 垃圾回收机制,自动回收,不需要管理 天然并发 goroutine 轻量级线程,高效利用多核 channle管道通信机制 函数可以返回多个值 二、开发工具 vscode 插件 sublime Text Vim Emacs Eclipse ...
分类:
编程语言 时间:
2019-02-04 08:59:18
阅读次数:
153
关于进程必备的理论基础: 1.操作系统的作用: 隐藏丑陋复杂的硬件接口,提供良好的抽象接口 管理、调度进程,并且将多个进程对硬件的竞争变得有序 2.多道技术: 产生背景: 针对单核,实现并发 现在的主机一般是多核,那么每个核都会利用多道技术 有4个cpu,运行于cpu1的某个程序遇到i... ...
分类:
系统相关 时间:
2019-01-24 21:50:42
阅读次数:
216