C++多线程编程第一讲-并发的基本概念及实现,进程、线程基本概念
/*第一节 并发基本概念与实现,进程、线程基本概念*/ //(1)并发、进程、线程的基本概念和综述 //(1.1)并发:两个或者更多的任务同时进行,一个程序同时执行多个独立的任务。 // 单核cpu某一个时刻只能执行一个任务;单核cpu实行多任务的方式是进行任务切换实现的。 // 这是一种并发的假象。任务之间的切换也是要有时间开销的。 // 多核cpu上可以实现真正的并发(同时执行多个任务-硬件并发)。 // 使用并发的原因就是同时可以执行多个任务,提高性能。 //(1.2)可执行程序:就是磁盘上的一个文件,windows:exe,linux rwx //(1.3)进程:可执行程序运行起来就产生一个进程。 //(1.4)线程:每个进程都会有一个主线程,并且主线程是唯一的。当执行一个可执行程序,主线程 // 随着进程一起启动。实际上是进程的主线程来调用main来执行。除了主线程之外,程序员可以 // 写代码创建其他的线程。线程也并不是越多越好,每一个线程需要占用堆栈内存。 // 线程是用来执行代码的。一个新的线程代表一个新的通路。创建线程的数量不建议 // 超过200-300。一个进程中最少有一个线程,那就是主线程。 //(1.5)学习心得: //(2)并发的实现方法 //(2.1)多进程并发 //(2.2)多线程并发:单个进程中创建了多个线程,轻量级的进程。一个进程中的所有线程 // 是共享内存的。全局变量,指针,引用等等都可以在线程之间传递。相较于多进程, // 优先考虑多线程实现。 //(2.3)总结:线程有以下优点:1.线程启动更快,消耗资源少。2.执行速度更快。 // 缺点:较高的复杂度,小心数据的一致性问题。 // //(3)C++11新标准线程库 //C++语言本身增加了对多线程的支持。可以编写与平台无关的多线程代码。可移植性,跨平台。
posted on 2021-09-16 08:25 xcxfury001 阅读(72) 评论(0) 收藏 举报
 
                     
                    
                 
                    
                 
                
            
         
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号