全部版块 我的主页
论坛 提问 悬赏 求职 新闻 读书 功能一区 学道会
347 0
2019-09-04
1. 简述为什么会出现线程不安全,如何解决.
两个线程共享一个堆上的公共变量a
线程1和线程2都有如下代码
int c = a;
c = c + 1;
a = c; //实际上可能写的是a++,但是a++看上去是原子的,为了演示,写成如上的形式。
假设a=100,按照预期,两个线程各执行一次,结果应该是102,但是可能出现101:
线程1:c = a; c = c +1;,此时c = 101,线程2执行c = a,此时a还是100,c = c + 1,c= 101。然后线程1写回101,线程2也写回101。
2. 简述死锁发生的原因.举例说明.
1.因竞争发生死锁现象:系统中供多个进程共享的资源的数目不足以满足全部进程的需要时,就会引起对诸资源的竞争而发生死锁现象
3. 将8.threading多线程.py改成多进程.
4. 理解队列和栈的区别.
队列是在队尾入队,队头出队,即两边都可操作。而栈的进栈和出栈都是在栈顶进行的,无法对栈底直接进行操作。 tmp_8ce405b33127e877219f91894c32e1e1.jpg
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群