将类传递给线程后,线程中未处理的读取异常

时间:2013-06-14 08:34:54

标签: windows multithreading visual-c++ visual-studio-2008 beginthreadex

http://pastebin.com/QPab6nkp是我的所有代码,非常混乱且未完成。

我发现错误在哪里 - 我认为我将philosophist范例传递给线程,因为进入线程,philosophist *ph = static_cast<philosophist*>(params); - 该ph变量包含一些我已经过去的垃圾数字(591519915,-519258915)等等)。 当然,当我试图获得哲学家的ID时,在信号数组中没有这样的id,gSems。如何正确地将该类传递给线程?

1 个答案:

答案 0 :(得分:0)

_beginthreadex(NULL,0,&amp; philosophistFunction,ph1,0,0);
没有必要和&amp;在ph1之前