当C语言关键字register,遇到多线程
c语言吧
全部回复
仅看楼主
level 5
程乾11 楼主
本人在进行串行程序(别人的,调试起来的感觉,你懂得)并行化的工作,用到了openmp;
主要是一个for循环,而我的主要工作就是把它并行化,
#pragma opm parallel private(.....)
for
{
....
....
函数A();
}
函数A()
{
。。。
。。。
for(...)
{
register a,b,c;
....
}
}
发现函数A()中的操作不能进行,产生了线程冲突。
请问各位,register关键字遇到多线程,是不是会产生错误
2014年05月10日 02点05分 1
level 5
程乾11 楼主
顶,怎么没人回复我
2014年05月10日 04点05分 2
level 11
你试试看用 64-bit 编译器。
32-bit x86 只有 8 个架构通用寄存器。
2014年05月10日 04点05分 3
level 13
[汗]
2014年05月10日 05点05分 4
level 14
这问题根本没有描述清楚,如果要访问同一个变量用volatile
2014年05月10日 05点05分 5
1