要使用Web worker获取新线程,我们是否需要为每个复杂的计算创建新的worker对象?
或者我只能创建一个工作对象,只需将Message发布到工作者JavaScript文件即可。
假设我必须为3个不同的输入计算某些东西,计算逻辑是相同的但输入将是不同的。
我是否需要创建3个新的工作对象,或者我只能创建一个工作者并发布3个不同的消息以获得3个独立的线程来进行计算?
答案 0 :(得分:1)
取决于您的要求。
3个新的工作线程将并行执行计算。
发布到同一工作线程实例的3个不同消息将按顺序计算这些消息的发布。注意:在这种情况下,您仍然需要一个Web工作者,以便这些计算不会阻止您的UI。