'form窗体中代码Private Declare Function CreateThread Lib "kernel32" (ByVal lpThreadAttributes As Any, ByVal dwStackSize As   Long,ByVal lpStartAddress As Long,lpParameter As Any,ByVal dwCreationFlags As Long,LpthreadId As Long) As LongPrivate Declare Function TerminateThread Lib "kernel32" (ByVal hThread As Long,ByVal dwExitCode As Long) As Longdim handle_1 as long
dim handle_2 as longprivate sub commandbutton1_Click()
       handle_1=CreateThread(..,addressof sub_1,.)    '其他参数省略
       handle_2=CreateThread(..,addressof sub_2,.)    '其他参数省略end subprivate sub commandbutton2_Click()
       terminatethread handle_1,0
       terminatethread handle_2,0end sub'在模块中代码写入sub_1和sub_2的代码
结果:点击按钮1发现有时候两个sub功能同时运行,有时候只有一个在运行?
请教高手,如何才能创建比较稳定的线程?新手提问,谢谢~~

解决方案 »

  1.   

    sub_1 和 sub_2 不能有冲突,比如都去操作同一个控件。
      

  2.   

    就我个人的浅见:VB做多线程非常不明智,VB就不能稳定的支持多线程。建议楼主放弃。
    如果楼主感兴趣,可以看看这本书,高人所著:http://download.csdn.net/source/1371398
      

  3.   

    sub_1和sub_2分别操纵两个不同控件;谢谢Veron_04,下下来研究一下
      

  4.   

    同上,vb的win32版不要妄想去弄多线程。
    想弄,去vb.net
      

  5.   

    操作同一个控件只是其中一个反例,并不表示操作不同控件就一定不冲突了。
    在一个工程中做两份完全独立的程序,技术要求非常高,不如用 ActiveX Exe 来得简单。
      

  6.   

    我是用Timer控件数组模拟多线程的。