进程如何把参数传递给线程 ( 积分: 0 )

  • 主题发起人 主题发起人 回音壁
  • 开始时间 开始时间

回音壁

Unregistered / Unconfirmed
GUEST, unregistred user!
方式很多!
用全局变量,线程开启后去读取这个全局变量是一个好办法
 
线程对象本身可以有公共变量,你可以在线程启动前,把变量传进去,然后启动线程,还可以在线程外声明线程变量,只要在threadvar 关键字后面输入你的变量名称就行了,和var差不多
 
最好不要用全局变量,同步起来很麻烦。创建时使用Create(true),然后把需要的参数,赋值给线程的内部变量。赋值后再用Resume启动线程。
 
to jim_zhan,如果这个全局变量,主线程和所创建的子线程都要来控制它,用你这种方法可以实现吗?这样能保证在主线程中和子线程中同步吗?
 
把你要传的参数写成一个结构体,再传指向这个这个结构体的指针P给CreateThread
 
同步自己做嘛。想都控制主线程的变量就传主线程的句柄过去,那子线程通过这个句柄就什么都可以控制了,就只是要注意同步就行了。[:D]
怕同步做不好就把要控制的那个变量弄成属性,然后对属性的读写方法进行同步吧。
 
后退
顶部