Python中的多线程编程
前言:
線程是操作系統(tǒng)能夠進行運算調(diào)度的最小單位(程序執(zhí)行流的最小單元)
它被包含在進程之中,是進程中的實際運作單位
一個進程中可以并發(fā)多個線程每條線程并行執(zhí)行不同的任務
(線程是進程中的一個實體,是被系統(tǒng)獨立調(diào)度和分派的基本單元)
每一個進程啟動時都會最先產(chǎn)生一個線程,即主線程
然后主線程會再創(chuàng)建其他的子線程
一個多線程程序,當主線程創(chuàng)建之后又有其他的子線程,就存在執(zhí)行完成的先后順序
join()括號中可以寫主線程等待子線程的時間
不寫表示等待子線程執(zhí)行完主線程再開始執(zhí)行
創(chuàng)建子線程來模擬同時看電影和聽音樂
運行結果如下,可以看到看電影和聽音樂同時進行
線程不安全:就是不提供數(shù)據(jù)訪問保護,在多線程環(huán)境中對數(shù)據(jù)進行修改,會出現(xiàn)數(shù)據(jù)不一致的情況。
線程安全:就是多線程環(huán)境中有對全局變量的變動時,需要對執(zhí)行的代碼塊采用鎖機制,當一個線程訪問到某個數(shù)據(jù)時,其他線程需要等待當前線程執(zhí)行完該代碼塊才可執(zhí)行,雅思輔導不會出現(xiàn)數(shù)據(jù)不一致或者數(shù)據(jù)被污染。
如果一段代碼在被多個線程執(zhí)行,如果每次運行結果和單線程運行的結果是一樣的,而且其他變量的值和預期一樣,就是線程安全的。
線程安全主要由對有全局變量或靜態(tài)變量有修改動作而引起的。
進行改進:
轉載于:https://www.cnblogs.com/zhangyanran/p/9896016.html
總結
以上是生活随笔為你收集整理的Python中的多线程编程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电脑新安装JDK版本并运行使用该JDK版
- 下一篇: js获取元素提示信息