python进程池和线程池_python 线程池和进程池(draft)

from concurrent import futures

from multiprocessing import cpu_count

import time

number_list = range(0, 40)

def evaluate_item(x):

# 计算总和,这里只是为了消耗时间

result_item = count(x)

# 打印输入和输出结果

return result_item

def i_o_function(x):

time.sleep(10)

def count(number):

for i in range(0, 100000000):

i = i + 1

return i * number

if __name__ == "__main__":

# 顺序执行

# start_time = time.time()

# for item in number_list:

# print(i_o_function(item))

# print("Sequential execution in " + str(time.time() - start_time), "seconds")

# 进程池执行

# print ("ProcessPoolExecutor workers=3")

# start_time1 = time.time()

# with futures.ProcessPoolExecutor(max_workers=3) as executor:

# future_list = [executor.submit(evaluate_item, item) for item in number_list]

# for future in futures.as_completed(future_list):

# print (future.result())

# print ("Process pool executuin in " + str(time.time() - start_time1) + "seconds")

# print ("ProcessPoolExecutor workers=5")

# start_time1 = time.time()

# with futures.ProcessPoolExecutor(max_workers=5) as executor:

# future_list = [executor.submit(evaluate_item, item) for item in number_list]

# for future in futures.as_completed(future_list):

# print (future.result())

# print ("Process pool executuin in " + str(time.time() - start_time1) + "seconds")

# print ("ProcessPoolExecutor workers=10")

# start_time1 = time.time()

# with futures.ProcessPoolExecutor(max_workers=10) as executor:

# future_list = [executor.submit(evaluate_item, item) for item in number_list]

# for future in futures.as_completed(future_list):

# print (future.result())

# print ("Process pool executuin in " + str(time.time() - start_time1) + "seconds")

# print ("ProcessPoolExecutor workers=%s" % cpu_count())

# start_time1 = time.time()

# with futures.ProcessPoolExecutor() as executor:

# future_list = [executor.submit(i_o_function, item) for item in number_list]

# for future in futures.as_completed(future_list):

# print (future.result())

# print ("Process pool executuin in " + str(time.time() - start_time1) + "seconds")

# 线程池执行

start_time2 = time.time()

with futures.ThreadPoolExecutor() as executor:

future_list = [executor.submit(i_o_function, item) for item in number_list]

for future in futures.as_completed(future_list):

print(future.result())

print("Thread pool executuin in " + str(time.time() - start_time2) + "seconds")

start_time2 = time.time()

with futures.ThreadPoolExecutor(max_workers=100000) as executor:

future_list = [executor.submit(i_o_function, item) for item in number_list]

for future in futures.as_completed(future_list):

future.result()

print("Thread pool executuin in " + str(time.time() - start_time2) + "seconds")

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用Python实现基于剪映草稿的图片和字幕文件的时间对齐,你可以使用剪映API和Python编程语言进行开发。以下是一个简单的示例代码,演示如何使用剪映API来实现该功能: ```python import requests # 剪映API的接口地址 url = "https://api.video.qq.com/filmora/v1/project/export" # 剪映草稿ID draft_id = "your_draft_id" # 图片文件列表 image_files = ["image1.jpg", "image2.jpg", "image3.jpg"] # 字幕文本列表 subtitle_texts = ["Subtitle 1", "Subtitle 2", "Subtitle 3"] # 时间对齐参数列表,单位为毫秒 time_alignments = [0, 1000, 2000] # 示例中每个图片和字幕的时间对齐参数为1秒 # 发送请求,生成视频 response = requests.post(url, json={ "draft_id": draft_id, "image_files": image_files, "subtitle_texts": subtitle_texts, "time_alignments": time_alignments }) # 处理响应结果 if response.status_code == 200: video_url = response.json()["video_url"] print("视频生成成功,下载链接:", video_url) else: print("视频生成失败,错误信息:", response.text) ``` 在上述示例中,你需要将`your_draft_id`替换为你的剪映草稿ID。然后,将图片文件列表、字幕文本列表和时间对齐参数列表替换为你要对齐的具体内容。 此示例使用requests库发送POST请求到剪映API的导出接口。API将根据提供的图像文件、字幕文本和时间对齐参数生成视频,并返回视频的下载链接。你可以根据需要调整时间对齐参数来实现图片和字幕的对齐效果。 请确保在使用剪映API之前,你已经获得了相应的API密钥和访问权限。具体的API文档和使用说明可以在剪映API的官方网站上找到。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值