【发布时间】:2011-05-23 19:28:41
【问题描述】:
是否可以在 .Net 中制作线程的副本?有点像 fork() 但只是一个线程而不是整个过程?
我有一个递归算法,出于测试目的,我不想评估代码可以采用的几个不同的分支。最简单的方法是在代码中的决策点克隆线程,让每个线程在不同的分支中继续。
【问题讨论】:
标签: .net vb.net multithreading
是否可以在 .Net 中制作线程的副本?有点像 fork() 但只是一个线程而不是整个过程?
我有一个递归算法,出于测试目的,我不想评估代码可以采用的几个不同的分支。最简单的方法是在代码中的决策点克隆线程,让每个线程在不同的分支中继续。
【问题讨论】:
标签: .net vb.net multithreading
任何递归算法都可以在堆栈对象的帮助下实现为迭代算法(如System.Collections.Stack)。那么你的问题就变成了克隆 Stack 对象(微不足道),而不是克隆线程及其堆栈状态(困难)。
【讨论】:
我的研究没有找到任何答案,而这里缺乏回应使我得出结论,这是无法完成的。
所以不,在 .Net 中没有复制/分叉线程的方法。
【讨论】: