什么是线程 进程:资源分配单位 线程:cpu执行单位(实体),每一个py文件中就是一个进程,一个进程中至少有一个线程 线程的两种创建方式: 一 二 线程的创建和销毁,相对于进程来说开销特别小 线程之间资源共享,共享的是同一个进程中的资源, 资源共享就涉及到数据安全问题,加锁来解决 线程锁 From ...
分类:
编程语言 时间:
2019-01-14 17:18:18
阅读次数:
143
方式二: 线程之间数据共享的验证: GIL本质就是一把互斥锁,既然是互斥锁,所有互斥锁的本质都一样,都是将并发运行变成串行,以此来控制同一时间内共享数据只能被一个任务所修改,进而保证数据安全。 可以肯定的一点是:保护不同的数据的安全,就应该加不同的锁。 要想了解GIL,首先确定一点:每次执行pyth ...
分类:
编程语言 时间:
2019-01-12 00:24:37
阅读次数:
191
###############总结############ 线程创建的2种方式(重点) 进程:资源分配单位 线程:cpu执行单位(实体) 线程的创建和销毁的开销特别小 线程之间资源共享,是同一个进程中的资源共享,会涉及到安全问题,所以需要加锁解决 锁:牺牲了效率,保证了数据安全(重点) 死锁现象:出 ...
分类:
编程语言 时间:
2019-01-12 00:24:08
阅读次数:
225
死锁:程序不往下执行了,程序又没有结束,就一直卡在哪里; 在使用synchronized的时候要避免死锁,synchronized嵌套就可能会引发死锁,需要严格的检查代码,排除死锁发生的可能; 特意演示死锁的案例:synchronized嵌套,使用多把同步锁🔒 死锁结果,程序一直卡住不动了,不往下 ...
分类:
移动开发 时间:
2019-01-08 15:39:20
阅读次数:
159
小知识点:在子进程中不能使用input输入! 一.守护进程 守护进程表示一个进程b 守护另一个进程a 当被守护的进程结束后,那么守护进程b也跟着结束了 应用场景:之所以开子进程,是为了帮助主进程完成某个任务,然而,如果主进程认为自己的事情一旦做完了就没有必要使用子进程了,就可以将子进程设置为守护进程 ...
分类:
系统相关 时间:
2018-12-29 23:34:19
阅读次数:
274
http://www.cnblogs.com/dunitian/p/4522988.html svn被锁死 https://blog.csdn.net/jiaohougenyang/article/details/52385540 https://blog.csdn.net/clever101/ar ...
分类:
其他好文 时间:
2018-12-29 21:08:09
阅读次数:
148
Java命令学习系列(二)——Jstack jstack是java虚拟机自带的一种堆栈跟踪工具。 功能 jstack用于生成java虚拟机当前时刻的线程快照。线程快照是当前java虚拟机内每一条线程正在执行的方法堆栈的集合,生成线程快照的主要目的是定位线程出现长时间停顿的原因,如线程间死锁、死循环、 ...
分类:
Web程序 时间:
2018-12-01 15:25:02
阅读次数:
189
SELECT request_session_id spid,OBJECT_NAME(resource_associated_entity_id)tableName FROM sys.dm_tran_locks WHERE resource_type='OBJECT ' spid :被锁进程ID。 ... ...
分类:
数据库 时间:
2018-11-20 16:25:24
阅读次数:
158
一、GIL锁 1. 什么是GIL全局解释器锁 GIL本质就是一把互斥锁,相当于执行权限,每个进程内都会存在一把GIL,同一进程内的多个线程 必须抢到GIL之后才能使用Cpython解释器来执行自己的代码,即同一进程下的多个线程无法实现并行 但是可以实现并发 在Cpython解释器下,如果想实现并行可 ...
分类:
编程语言 时间:
2018-11-12 21:46:05
阅读次数:
276