我正在审查创建大量线程的代码。 CreateThread documentation on Windows表示所有线程创建调用都在进程内被序列化。为了估计这些代码对性能的影响,我想知道CreateThread需要运行多长时间?我理解这取决于已加载到进程中的DLL的数量,但想知道一个球场值。
谢谢!
答案 0 :(得分:2)
您最好的选择可能是编写单元测试并查看应用程序需要多长时间。
但是,如果你需要大量的线程,那么当你的程序启动时,在初始化时,你可以生成一个刚刚开始填充线程数组的线程,这样你就可以完成你的应用程序的设置并且线程将在需要时准备就绪。
如果我从我的笔记本电脑中提供数字,它将根据操作系统,处理器,内存和可能的.net版本而有所不同,因此这些数字最多也会非常粗糙。