fsyhrb
驱动牛犊
驱动牛犊
  • 注册日期2002-03-13
  • 最后登录2005-06-08
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1555回复:5

vb如何创建多线程

楼主#
更多 发布于:2004-04-09 13:25
采用一下方法:
    Private Declare Function CreateThread Lib "kernel32" (ByVal lpThreadAttrib
utes As Long, ByVal dwStackSize As Long, ByVal lpStartAddress As Long, lpParam
eter As Any, ByVal dwCreationFlags As Long, lpThreadId As Long) As Long


hRCRThread = CreateThread(Null, ByVal 0&, AddressOf RComReadThread, ByVal 0&,
ByVal 0&, 0)


Function RComReadThread(ByRef Param As Long) As Long


fsyhrb
驱动牛犊
驱动牛犊
  • 注册日期2002-03-13
  • 最后登录2005-06-08
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-04-09 13:26
BBS 水木清华站 - Visual Basic编程 - 阅读文章  
VisualBasic 版
   [上一篇] [下一篇] [同主题上篇] [同主题下篇]  
 
发信人: passivesonar (passivesonar), 信区: VisualBasic
标  题: vb中如何创建多线程
发信站: BBS 水木清华站 (Fri Apr  9 13:22:24 2004)

采用一下方法:
    Private Declare Function CreateThread Lib "kernel32" (ByVal lpThreadAttrib
utes As Long, ByVal dwStackSize As Long, ByVal lpStartAddress As Long, lpParam
eter As Any, ByVal dwCreationFlags As Long, lpThreadId As Long) As Long


hRCRThread = CreateThread(Null, ByVal 0&, AddressOf RComReadThread, ByVal 0&,
ByVal 0&, 0)


Function RComReadThread(ByRef Param As Long) As Long


提示:操作符addressof 使用无效,是为什么,谢了先
 
zog1129
驱动牛犊
驱动牛犊
  • 注册日期2004-01-05
  • 最后登录2004-05-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-04-12 09:55
没想到这里居然还有人问VB的问题!
我从前做过一年多的VB,我的感觉是vb基本上不支持线程,我的方式是:用DoEvents来代替!如果是需要用线程来执行的步骤是循环的话,用DoEvents的效果还是不错的,在循环内部加上这个语句就可以了。如果是与设备打交道的话,效果要差一些。
赚多多的钱,把九州和四国都变成养猪场.
mooneye
驱动牛犊
驱动牛犊
  • 注册日期2004-04-05
  • 最后登录2005-07-28
  • 粉丝0
  • 关注0
  • 积分11分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-04-13 16:38
vb下可以用多线程,但是很麻烦,可以用doevents来实现基本的需要的功能,赫赫!
lsn_061
驱动老牛
驱动老牛
  • 注册日期2002-05-09
  • 最后登录2006-10-06
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望261点
  • 贡献值0点
  • 好评度169点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-04-14 12:28
用VC就完了么//
[img]http://bbs.zndev.com/image/medal/5.gif[/img]
prettyxp
驱动牛犊
驱动牛犊
  • 注册日期2004-06-03
  • 最后登录2014-05-01
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-10-13 17:22
Function RComReadThread(ByRef Param As Long) As Long

改为
public Function RComReadThread(ByRef Param As Long) As Long

然后把这个函数放入模块里面,这样Addressoff才不会出错
游客

返回顶部