# -*- coding: utf-8 -*-
#!/usr/bin/env python
# @Time : 2018/6/29 11:26
# @Software: PyCharm
import time
from concurrent.futures import ThreadPoolExecutor
import threading
import multiprocessing
'''
创建一个最大可容纳max_workers个的线程池
'''
pool1 = ThreadPoolExecutor(max_workers=300)
def return_future_result(message):
time.sleep(3)
return message
def go():
for num in range(1, 10):
# 往线程池里面加入一个task
pool1.submit(return_future_result, ("hello"+str(num)))
if __name__ == '__main__':
# 第一种
pool = multiprocessing.Pool(processes=10)
result = []
for i in xrange(60000):
msg = "hello %d" % (i)
print i
if int(i) % int(2000) == 0:
time.sleep(2)
result.append(pool.apply_async(return_future_result, (msg,)))
# 第二种
try:
threads = []
t1 = threading.Thread(target=return_future_result, args=(9101,))
threads.append(t1)
for port in (1,10):
threads.append(threading.Thread(target=return_future_result, args= (int(port[0]),)))
# 启动
for n in range(len(threads)):
threads[n].start()
except Exception, e:
print str(e)
# 第三种
for num in range(1, 1000):
print num
pool1.submit(return_future_result, num)
if int(num) % int(1000) == 0:
time.sleep(2)
进QQ群(779809018)免费领取学习资源,疑难问题解答。同时欢迎大家关注我的微信公众号:代码帮 ,免费领取学习资源。
本公众号将秉持活到老学到老学习无休止的交流分享开源精神,汇聚于互联网和个人学习工作的精华干货知识,一切来于互联网,反馈回互联网。
目前研究领域:大数据、机器学习、深度学习、人工智能、数据挖掘、数据分析。 语言涉及:Java、Scala、Python、Shell、Linux等 。同时还涉及平常所使用的手机、电脑和互联网上的使用技巧、问题和实用软件破解。 只要你一直关注和呆在群里,每天必须有收获,讨论和答疑QQ群:大数据和人工智能总群(779809018)微信公众号(代码帮)每天分享最新IT、大数据和人工智能新技术。