我正在运行RHEL 6.4 64位,我得到了一个编译和执行的程序。该计划有:
cpu_set_t cputset;
CPU_ZERO(&cpuset);
CPU_SET(data->num, &cpuset); //data is a structure, don't think it's relevant to my question
int ret = sched_setaffinity(0, sizeof(cpuset), &cpuset);
//print ret
编译32/64位gcc / icc时,没有编译错误。这将返回0并在使用-m32(32位编译器)编译时正确生成结果,但是当使用64位编译器进行编译时,它只是通过运行而没有任何重新编译而返回1,2和128看似随机。当我编译64位并执行时,有人可以帮我解决/识别出错的地方吗?谢谢你的帮助。