多線程執行同一任務,不共享局部變量


多線程執行同一任務,不共享局部變量

一、 代碼展示

import threading
import time


# 多線程執行同一任務時,局部變量是不共享的
def sum_num():
    num = 0
    i = 1
    print("我進來了...")
    time.sleep(1)
    while i <= 20000000:
        num += 1
        i += 1
    print("%s:%d" % (threading.Thread.name, num))


def main():
    t1 = threading.Thread(target=sum_num)
    t2 = threading.Thread(target=sum_num)

    t1.start()
    t2.start()


if __name__ == "__main__":
    main()

運行結果

我進來了...
我進來了...
<property object at 0x000002221D4F7E08>:20000000
<property object at 0x000002221D4F7E08>:20000000


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM