理解多线程,个人觉得理解什么是原子操作就行,市面上很多语言都支持多线程,但多线程在操作全局资源时会出现资源抢占问题,导致程序结果的很多不确定性。
js语言属于单线程,在js中由于没有多线程的概念,但有大量异步代码,异步和多线程切换实际上在代码层面是一样的,js语言的函数是原子操作,所以缩小了很大的不确定性
python 语言支持多线程,但由于gil的存在,任何时间只存在单一线程,这样就保证了原子操作的可靠性,因为多线程环境中,共享数据同一时间只能有一个线程来操作 不然中间过程可能会产生不可预制的结果
多线程理解
最新推荐文章于 2024-07-03 16:17:13 发布