亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python實現(xiàn)的多線程同步與互斥鎖功能示例

 更新時間:2017年11月30日 11:47:19   作者:愛橙子的OK繃  
這篇文章主要介紹了Python實現(xiàn)的多線程同步與互斥鎖功能,涉及Python多線程及鎖機制相關操作技巧,需要的朋友可以參考下

本文實例講述了Python實現(xiàn)的多線程同步與互斥鎖功能。分享給大家供大家參考,具體如下:

#! /usr/bin/env python
#coding=utf-8
import threading
import time
'''
#1、不加鎖
num = 0
class MyThread(threading.Thread):
  def run(self):
    global num
    time.sleep(1) #一定要sleep?。?!
    num = num + 1
    msg = self.name + ' num is ---- ' + str(num)
    print msg
def test():
  for i in range(10):
    s = MyThread() #實例化一個Thread對象,每個Thread對象代表著一個線程
    s.start() #通過start()方法,開始線程活動
'''
#'''
class MyThread(threading.Thread):
  def run(self):
    for i in range(3):
      time.sleep(1)
      msg = self.name+' @ '+str(i)
      print msg
def test():
  for i in range(5):
    t = MyThread()
    t.start()
#'''
'''
#2、加鎖
num = 0 #多個線程共享操作的數(shù)據(jù)
mu = threading.Lock() #創(chuàng)建一個鎖
class MyThread(threading.Thread):
  def run(self):
    global num
    time.sleep(1)
    if mu.acquire(True): #獲取鎖狀態(tài),一個線程有鎖時,別的線程只能在外面等著
      num = num + 1
      msg = self.name + ' num is ---- ' + str(num)
      print msg
      mu.release() #釋放鎖
def test():
  for i in range(10):
    s = MyThread()
    s.start()
'''
if __name__ == '__main__':
  test()

運行結果:

再分別運行注釋中的每一部分代碼:

1. 不加鎖:

2. 加鎖:

更多關于Python相關內容感興趣的讀者可查看本站專題:《Python進程與線程操作技巧總結》、《Python Socket編程技巧總結》、《Python數(shù)據(jù)結構與算法教程》、《Python函數(shù)使用技巧總結》、《Python字符串操作技巧匯總》、《Python入門與進階經典教程》及《Python文件與目錄操作技巧匯總

希望本文所述對大家Python程序設計有所幫助。

相關文章

  • python中關于py文件之間相互import的問題及解決方法

    python中關于py文件之間相互import的問題及解決方法

    這篇文章主要介紹了python中關于py文件之間相互import的問題,本文用一個例子演示下如何解決python中循環(huán)引用的問題,需要的朋友可以參考下
    2022-02-02
  • Python3中延時變量和 free_list鏈表的區(qū)別解析

    Python3中延時變量和 free_list鏈表的區(qū)別解析

    這篇文章主要介紹了Python3中延時變量和 free_list鏈表的區(qū)別,在Python3中,"延時變量" 和 "free_list鏈表" 是兩個不同的概念,他們之間沒有直接聯(lián)系,本文給實例相結合給大家講解的非常詳細,需要的朋友可以參考下
    2023-04-04
  • 如何基于Python爬蟲爬取美團酒店信息

    如何基于Python爬蟲爬取美團酒店信息

    這篇文章主要介紹了如何基于Python爬蟲爬取美團酒店信息,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-11-11
  • ​如何愉快地遷移到 Python 3

    ​如何愉快地遷移到 Python 3

    如今 Python 成為機器學習和大量使用數(shù)據(jù)操作的科學領域的主流語言; 它擁有各種深度學習框架和完善的數(shù)據(jù)處理和可視化工具。這篇文章主要介紹了遷移到 Python 3的方法,需要的朋友可以參考下
    2019-04-04
  • python連接mysql數(shù)據(jù)庫示例(做增刪改操作)

    python連接mysql數(shù)據(jù)庫示例(做增刪改操作)

    python連接mysql數(shù)據(jù)庫示例,提供創(chuàng)建表,刪除表,數(shù)據(jù)增、刪、改,批量插入操作,大家參考使用吧
    2013-12-12
  • Python正則表達式介紹

    Python正則表達式介紹

    本文介紹了Python對于正則表達式的支持,包括正則表達式基礎以及Python正則表達式標準庫的完整介紹及使用示例。本文的內容不包括如何編寫高效的正則表達式、如何優(yōu)化正則表達式,這些主題請查看其他教程
    2012-08-08
  • 利用django創(chuàng)建一個簡易的博客網站的示例

    利用django創(chuàng)建一個簡易的博客網站的示例

    這篇文章主要介紹了利用django創(chuàng)建一個簡易的博客網站的示例,幫助大家更好的學習和使用django框架,感興趣的朋友可以了解下
    2020-09-09
  • 詳解python:time模塊用法

    詳解python:time模塊用法

    這篇文章主要介紹了python:time模塊用法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-03-03
  • Python 敏感詞過濾的實現(xiàn)示例

    Python 敏感詞過濾的實現(xiàn)示例

    本文主要介紹了Python 敏感詞過濾的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • python中字符串最常用的十三個處理操作記錄

    python中字符串最常用的十三個處理操作記錄

    這篇文章主要給大家介紹了關于python中字符串最常用的13個處理操作的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-03-03

最新評論