python 다 중 프로 세 스 사용 및 스 레 드 탱크 사용 방법 코드 상세 설명
2157 단어 python다 중 프로 세 스스 레 드 탱크
import os,time
import sys
from multiprocessing import Process
class MyProcess(Process):
"""docstring for MyProcess"""
def __init__(self, arg, callback):
super(MyProcess, self).__init__()
self.arg = arg
self.callback = callback
def run(self):
self.callback(self.arg)
def test(arg):
print(" {} >>> pid={}".format(arg,os.getpid()))
for i in range(1,5):
sys.stdout.write(" {} {}\r".format(arg,i))
sys.stdout.flush()
time.sleep(1)
def main():
print(" >>> pid={}".format(os.getpid()))
myp=MyProcess(1,test)
myp.start()
myp2=MyProcess(2,test)
myp2.start()
myp.join()
myp2.join()
print(" ")
if __name__ == '__main__':
main()
스 레 드 탱크:주로 미래 모듈 을 사 용 했 습 니 다!다음 예,첫 번 째 는 정상 이 고 두 번 째 는 스 레 드 탱크 이 며 세 번 째 는 2 개의 스 레 드 탱크 를 운행 하여 줄 을 서 겠 습 니 다.
from concurrent.futures import ThreadPoolExecutor
import time
def sayhello(a):
print("hello: "+a)
time.sleep(2)
def main():
seed=["a","b","c"]
start1=time.time()
for each in seed:
sayhello(each)
end1=time.time()
print("time1: "+str(end1-start1))
start2=time.time()
with ThreadPoolExecutor(3) as executor:
for each in seed:
executor.submit(sayhello,each)
end2=time.time()
print("time2: "+str(end2-start2))
start3=time.time()
with ThreadPoolExecutor(2) as executor1:
executor1.map(sayhello,seed)
end3=time.time()
print("time3: "+str(end3-start3))
if __name__ == '__main__':
main()
총결산위 에서 말 한 것 은 소 편 이 여러분 에 게 소개 한 python 다 중 프로 세 스 사용 및 스 레 드 탱크 의 사용 방법 코드 에 대한 상세 한 설명 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 메 시 지 를 남 겨 주세요.소 편 은 제때에 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
로마 숫자를 정수로 또는 그 반대로 변환그 중 하나는 로마 숫자를 정수로 변환하는 함수를 만드는 것이었고 두 번째는 그 반대를 수행하는 함수를 만드는 것이었습니다. 문자만 포함합니다'I', 'V', 'X', 'L', 'C', 'D', 'M' ; 문자열이 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.