2016-11-21 60 views
0

在C++/C#/ Java中,我们可以用接受一些参数的函数启动线程。在WinAPI中,我们使用只接受void *的函数启动线程。 有多少参数真的传递给真正的Windows线程?也许很多参数都变成void *指向一些结构体?在Windows中传递给线程的参数数量

回答

0

大多数线程API的核心是一个执行函数指针和一个void *参数,它允许您为执行函数提供一些数据。 void *通常指向某个对象实例,然后线程函数将其转换为已知的对象类型以供使用。但是,这对于程序员错误已经成熟。

您提到的更高级别的API(C++中的std :: thread,Java中的Thread等)正在这样做,为您提供方便的,类型安全的API以确保您不会搞砸。