亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python并發線程那些事

發布時間:2020-06-29 08:00:39 來源:網絡 閱讀:159 作者:可愛的汁汁 欄目:編程語言
 在python中并發是指一次處理多件事,而并行是指一次做多件事。也可以理解為在做事情時,或者計算機的資源需要處理時,在此時刻計算機需要處理資源時而把人做事情映射成計算機工作時可以或者互不干擾處理資源,這也就反射出貌似同步和異步處理時,這就是并行,而并發時計算機的資源需要處理時,在此時刻內具體負責處理的工作或事情,強調的是具體,某個時段內要做的工作,一個可以看做廣度,這個可以看做深度,而此時并發處理的資源多了起來,很多的在此時高并發也就衍生出來了。
     并發的解決方案有幾下幾種:
     1,隊列,緩沖區,
                 隊列先進先出,計算機排順序的處理資源,
                 緩沖區,資源處理前有一個緩沖地帶可以處理時

        2,爭搶,
                    資源需要處理時被某個程序也好,還是什么的東西,反正就是此資源被鎖定了資源,而其他就只能繼續等待這個資源值了,直到此資源被釋放了在重新使用或運行等等。而爭搶的模式的弊端在于一旦占據資源時導致其他得不到這個資源,也可能存在資源的浪費等等。
        3,預處理,
            資源值來臨前需要提前需要預加載,預先做好一部分工作,如手機的緩存的功能等
        4,提速,
                    加強提高處理資源的工具,處理器cpu不行了,4核不夠上8核,內層不夠,8g ,16,32g等
        5,消息中間件
                    這個不同于緩沖,中間件常見的有RabbitMQ、ActiveMQ(Apache)、RocketMQ(阿里Apache)、kafka(Apache),反正就是買服務啦,第三方云等等。

線程

python并發線程那些事

            上面圖片中此電腦中線程進程可以看一下,是指進程程對計算機程序中資源的分配和調度和使用,線程可以看做輕量級進程,包含在進程之內,線程存在就緒,運行,阻塞,終止四種狀態。python中線程使用threaing庫,
        導入threading庫即可。

            import  threading
def a():
    print("111111111111")
    print("2222222222222222")

t = threading.Thread(target=a, name='worker') # 線程對象
t.start() #線程啟動

在此創建了一個線程對象,target是目標函數,名稱等,調用時需要啟動start,python并沒有線程退出的方案,要么繼續執行完畢,或者拋出異常,

import threading
import time

def worker():
    count = 0
    while True:
        if (count > 5):
            # raise RuntimeError(count) #拋出
            # return
            break
        time.sleep(1)
        print("I'm work------")
        count += 1

t = threading.Thread(target=worker, name='worker') 
t.start() 

print('==End==')

線程如何傳參,

import threading
import time

def add(x, y):
    print('{} + {} = {}'.format(x, y, x + y, threading.current_thread().ident))

thread1 = threading.Thread(target=add, name='add', args=(4, 5)) 
thread1.start() 

time.sleep(2)

thread2 = threading.Thread(target=add, name='add', args=(5,), kwargs={'y': 4})
thread2.start() 
time.sleep(2)

thread3 = threading.Thread(target=add, name='add', kwargs={'x': 4, 'y': 5}) 
thread3.start() 

線程的屬性和方法:
在此有了start和run的方法,start和run就是start啟動線程時每一個線程需要執行該方法一次,啟動了一個新線程,而run時運行該線程函數,并沒有啟動一個新線程,只是一個普通函數而已。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

虞城县| 湛江市| 宁安市| 长顺县| 安顺市| 韶关市| 高州市| 禹州市| 青冈县| 松阳县| 曲麻莱县| 西乡县| 邯郸县| 凌海市| 灌云县| 彰化县| 额尔古纳市| 揭阳市| 澄城县| 交城县| 武鸣县| 根河市| 景德镇市| 青铜峡市| 麻栗坡县| 沈阳市| 科技| 镇康县| 山东省| 应用必备| 武强县| 玉门市| 大足县| 涟水县| 道孚县| 仙游县| 青铜峡市| 高密市| 奉贤区| 岚皋县| 泰州市|