多线程的问题,子线程和主线程并没有并列运行?

xiaokun111 2006-04-29 12:21:34
procedure abc;
begin
a(...);

b(...);

end;
将a(...);做为一个线程独立运行,程序应该直接运行b(...);而实事上b(...);在等待
a(...)运行完后才运行,这是什么问题?
...全文
206 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaokun111 2006-04-29
  • 打赏
  • 举报
回复
是和luxuewei5214(小卢) 的方法一样的,
将a(...);那一段变为线程,因为这一段相当费时,
不想让主程序停留在这,可以先执行b(...);
a(...);这段调为低优先级,慢慢去执行,当再有任务时加入a(...)的线程队列。
程序代码没问题,没有出错,只是b(...)要等到a(...)执行完后才运行,很奇怪。
柯本 2006-04-29
  • 打赏
  • 举报
回复
你是用什么方法将a(...);做为一个线程独立运行的?
luxuewei5214(小卢) 的方法没问题
alexanda2000 2006-04-29
  • 打赏
  • 举报
回复
>>>将a(...);做为一个线程独立运行

可能你做法不对
luxuewei5214 2006-04-29
  • 打赏
  • 举报
回复
将a,b替换成Threada.create(false);和Threadb.create(false);直接创建线程就好了阿,我的都是在并行运行的

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧