平台: Windows XP处理器:双核
我有一个用C语言编写的程序,它被编译并形成了可执行文件。我的问题是,程序会使用两个核心(因为我的机器是双核的),还是我必须让我的程序多线程才能做到这一点?
发布于 2011-10-12 21:17:07
当你想使用多核时,你必须实现一个多线程程序。
有很多线程库。我建议您研究一下OpenMP website,它非常容易集成和用于并行化。
EDIT:一个简单的例子:
通常,您只需添加以下内容即可并行化for循环:
#pragma omp parallel
for(...)当然,您必须链接到OpenMP并使用OpenMP支持进行编译。
发布于 2011-10-12 21:17:43
简而言之:你必须让你的程序是多线程的,这样才能利用两个内核。
发布于 2011-10-12 21:20:13
一个处理器一次只能执行一个程序。所以要使用双核,你需要同时创建一个线程和一个可执行线程。
https://stackoverflow.com/questions/7740657
复制相似问题