社区
Delphi
帖子详情
异步执行两个循环的问题
22222bbb
2017-09-08 11:52:31
写了个例子,窗体1和窗体2,上面各有一个按扭,代码都是从0到10000循环显示 这个i的值
这两个窗口我各点了一下两个窗口上的按扭,先点的总是被挂起了,有没有办法同时两个都可以运行的?
...全文
1290
1
打赏
收藏
异步执行两个循环的问题
写了个例子,窗体1和窗体2,上面各有一个按扭,代码都是从0到10000循环显示 这个i的值 这两个窗口我各点了一下两个窗口上的按扭,先点的总是被挂起了,有没有办法同时两个都可以运行的?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
22222bbb
2017-09-09
打赏
举报
回复
这个问题把我整蒙逼了,在同一窗口界面里我知道会出现这样的情况,之前也一直没碰到过这种在两个子窗口中这样循环操作,百度了一下用 Task.Run(这里是按扭的过程) 这样解决了,其实是线程,现在说一下我的真实情况,以上是为了简单写的一个测试例子方便大家能快速帮到我解决,实际情况是:有两个MDI字窗口,窗口1是用来向服务端循环发送数据,由于数据很多,我用的是多线程,始终保持20个线程向服务器发送数据,窗口2则是处理 另一笔数据,也是采用的多个线程同时处理,但当我两个窗口都同时进行工作的时候,先工作 的窗口就停止创建线程了,也就是被挂起了。 两个窗口我采用的线程数量都是这样的:一开始创建20个线程,比如有一万条数据,那就是20个线程运行,每个线程处理一条数据,当结束时线程的计数器-1,同时这个线程被销毁,这个时候又创建新的线程把数量补齐到20,也就是始终保持20个线程,直到数据被处理完所有线程。 所以如果我在实际运用中,大家可能会回答采用多线程,但我的应用本身就已经是多线程,如果再把两个处理的过程放入子线程中,
那么就相当于线程里面又有多个线程,感觉这样难度很大
,虽然现在用 TTask.Run解决了这个问题,但脑子还是蒙的,想请教大虾们,除了我这个方法外,还有其他方法吗?
Android应用程序消息处理机制
这个PPT讲Android应用程序线程消息
循环
原理,主要涉及到Handler和Looper
两个
类,以及根据消息
循环
的不同使用场景,总结出三种线程使用模型。掌握Android应用程序消息处理机制,有助于我们熟练地使用同步和
异步
编程,...
异步
引起的for
循环
问题
//
异步
引起的for
循环
问题
1 for(var i=0;i<5;i++) { setTimeout(function timer(){ console.log(i); },i*1000); } //
异步
引起的for
循环
问题
2 for (var i = 1; i <= 5; i++) { item.onclick = ...
java for
循环
异步
_关于for
循环
里面
异步
操作的
问题
输出如下:而且该操作几乎是在同一时间完成,setTimeout定时根本就没有起作用,这是因为:单线程的js在操作时,对于这种
异步
操作,会先进行一次“保存”,等到整个for
循环
执行
结束后,此时i的值已经变成5,因为...
CompletableFuture
异步
执行
用法详解
CompletableFuture
异步
执行
用法详解
for
循环
中
异步
请求
问题
一般这个这个时候就遇到
两个
问题
因为你的请求是在for
循环
中,而且又是
异步
的请求所以,请求出来的数据顺序错乱 还有就是在for里 等所有的
异步
请求完成之后,再去处理数据。这时你就会发现。它是先走了
异步
请求下边...
Delphi
5,386
社区成员
262,729
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章