多线程(四)
来源:互联网 发布:知乎隐私设置 编辑:程序博客网 时间:2024/04/28 04:50
多线程操作中 ,2个不同的线程 在 线程一.start() ; 线程二.start() ; 这种顺序下,我以前以为 在控制台输出都是先 线程一的代码先被输出, 线程二的后输出, 后来经过几次试验 ,发现不是. 这也是随机的 我试了2次, 一次是一的先被输出 , 另一次就是 二的先被输出.
同步有一个比较经典的范例 --> 那就是生产者与消费者
一个线程向数据存储空间添加数据(生产者), 另一个线程从数据存储空间取出数据(消费者).
这种程序有两种情况需要考虑:
(1) 假设生产者刚向数据存储空间存储了一个人的姓名 还没来得及输入性别, CPU就切换到了消费者线程,消费者会错误的把这个人的姓名和前一个人的性别联系在一起;
(2) 生产者都放了好几条数据了, 但是消费者才开始取数据,这样的话就不能把生产者生产出的数据一一的取出来了;
(3) 消费者取完一个数据, 还没等生产者生产出一条新的数据, 消费者就又去取出一条信息. 这样去除了一条重复的数据, 不好!
- 多线程(四)
- 多线程四
- 多线程(四)
- 多线程(四)_多线程互动
- 多线程之四
- 多线程编程之四
- 多线程进阶代码四
- 多线程学习笔记 四
- 多线程编程之四
- C++多线程(四)
- 多线程(四)同步--非常重要
- 多线程程序设计(四)
- c++多线程(四)
- c++多线程(四)
- 多线程学习笔记四
- C++多线程(四)
- 多线程学习之四
- 多线程高级话题(四)
- 排序算法一览
- 让Firefox在Linux上总是最新
- 开篇,CSDN
- 一首音乐的思考
- C++类对象的复制-拷贝构造函数
- 多线程(四)
- 软件工程中的耦合
- ASP.NET定制类商务网站(一)
- 【转】美国十大毕业典礼演讲:记着你总会死去……
- 肖申克的救赎
- JS 右键菜单功能
- 用MFC开发ActiveX控件详解
- html标题一览表
- iframe 内页面对父页面元素操作..