1 多執行緒執行
importthreadingfrom datetime import *
deftest():
print(datetime.now())
defthd():
theaders =
for i in range(10):
t = threading.thread(target=test)
for t intheaders:
t.start()
if __name__ == '__main__':
thd()
importthreadingfrom datetime import *
deftest():
print(datetime.now())
deflooptest():
for i in range(50):
test()
defthd():
threads=
for i in range(100):
t = threading.thread(target=looptest)
for t inthreads:
t.start()
if __name__ == '__main__':
thd()
2 守護執行緒
上面建立的執行緒是main()執行緒的子執行緒,即先啟動主線程main(),然後執行thd自動子執行緒。
守護執行緒則是在主線程執行完後,所有的子執行緒都被關閉(無論子執行緒是否執行完成)。預設是沒有守護執行緒,主線程執行完畢之後,會等待子執行緒全部執行完畢,才會結束程式。如果當子執行緒死迴圈,程式將不會關閉,因此在測試時可以設定守護執行緒解決這個問題。
importthreadingfrom datetime import *
deftest():
print(datetime.now())
deflooptest():
for i in range(50):
test()
defthd():
threads=
for i in range(1):
t = threading.thread(target=looptest)
t.setdaemon(true)
for t inthreads:
t.start()
if __name__ == '__main__':
thd()
3 阻塞執行緒
還可以通過子執行緒join()方法阻塞執行緒,讓主線程等待子執行緒完成之後再往下執行,等主線程執行完畢後在關閉所有子執行緒。
並且可以通過join()的timeout引數來控制,如果超過時間子執行緒未完成,則主線程繼續執行,執行完成後關閉子執行緒。
importthreadingfrom datetime import *
deftest():
print(datetime.now())
deflooptest():
for i in range(50):
test()
defthd():
threads=
for i in range(1):
t = threading.thread(target=looptest)
t.setdaemon(true)
for t inthreads:
t.start()
for t inthreads:
t.join(1)
if __name__ == '__main__':
thd()
阻塞執行緒的主要意義在於控制子執行緒與主線程的執行順序。
Jmeter介面併發測試
配置流程大致分為以下幾步 1.新增執行緒組 2.新增http請求和http請求頭管理器 3.新增定時器 4.新增 5.執行 6.結果分析 一 新增執行緒組 執行緒組配置如下 執行緒組引數詳解 取自部落格 二 新增http請求和http請求頭管理器 http請求配置如下 需要注意的是 如果是post請...
Linux 介面併發壓力測試
webbench安裝 wget wget tar zxvf webbench 1.5.tar.gz make sudo make install 執行 webbench c 併發數 t 併發時間 webbench c 300 t 10 ab命令原理 apache的ab命令模擬多執行緒併發請求,測試伺...
Jmeter 實現介面併發測試
執行環境 win 7 1.執行啟動jmeter 2.新增測試計畫 3.新增 執行緒組 以下引數的意思是間隔0秒併發產生9000個執行緒 執行緒組主要包含三個引數 執行緒數 準備時間 ramp up period in seconds 迴圈次數。執行緒數 虛擬使用者數,乙個虛擬使用者占用乙個程序或執行...