帮我看看,这个多线程的问题。是不是我基础太差!!!!!!!!!!!

winner2050 2007-02-25 09:17:31
我在某论坛发言
“如果不用多线程,当网页A不打开完毕的时候,根本不可能动界面里面的任何东西。”--实现Tab选项卡界面的web浏览器效果。

回帖:

“还是回去好好学编程吧,不到半瓶子就出来晃了。你可以把你这个帖子留下,过2年再看看,看看到时候是不是会觉得自己像个小白。当然,过了2年要是还没什么进步,那当我没说”

“楼上说话请不要太打击人了.
winner2050 只是不知道 UI 多线程和任务多线程的区别.
当然一般 UI 多线程的软件也很少见, 大多数开发人员也不会用到.

闻道有先后, 术业有专攻. 让别人知道, 比单纯鄙视更有意义. ”

他们说得那么理直气壮的,到底谁对。我都晕了。

我测试了一下
用tab控件在tab1里面的按钮运行一个非常长的循环真的是界面假死了,如果用多线程就能边运行,边切换其他的tab选项卡。
...全文
913 31 打赏 收藏 转发到动态 举报
写回复
用AI写文章
31 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiao_p 2007-02-26
  • 打赏
  • 举报
回复
赢什么啊,ui线程就只有一个
你多线程也不是多ui线程

analysefirst 2007-02-26
  • 打赏
  • 举报
回复
为分而来。。。。。。
股神 2007-02-25
  • 打赏
  • 举报
回复
up
winner2050 2007-02-25
  • 打赏
  • 举报
回复
虽然大家的回答有点不着调,但是还是说明这个是多线程,不是多任务。
那么我赢了。
R_Sedgewick 2007-02-25
  • 打赏
  • 举报
回复
到处混混
lonelydreamsym 2007-02-25
  • 打赏
  • 举报
回复
没理解清楚,你说的弄新个浏览器了,那肯定是多线程的
lonelydreamsym 2007-02-25
  • 打赏
  • 举报
回复
WebForm一般是异步,WinForm是多线程
cancerser 2007-02-25
  • 打赏
  • 举报
回复
在winform里 异步 线程当然是很好的解决方案
但这个问题 好像没争论到一起去
刚才我用 TAB控件+Microsoft Web Browser 试了一下不会出现任何UI假死,那是因为WebBrowser本身的方法应该是异步的.
如果是自己读取网页数据来显示的话 那就会出现假死 毕竟是单线程
不过楼长所说的循环问题 到是很好解决的
Application.DoEvents() 这个方法处理当前在消息队列中的所有 Windows 消息//MSDN写的很详细
int i;
while(true)
{
i=0;
Application.DoEvents();
}
//系统会相应任何界面的重画,这在接收大数据时是很实际的写法 我想这应该是 UI线程的技巧吧
wuluhua2003 2007-02-25
  • 打赏
  • 举报
回复
学习
winner2050 2007-02-25
  • 打赏
  • 举报
回复
崩溃了!

我是不是说在webfrom里面搞多线程,而是实现多个网页在Tab切换的,跟IE7 、FF、TT、Maxthon 这种浏览器一样的。

你们扯到哪里去了。
burn3tt 2007-02-25
  • 打赏
  • 举报
回复
WebForm上用多线程有意义吗?数据都没读完,怎么生成网页?还请来点真实例。
====================================
不是!
是用winfrom作个浏览器。

===============
那肯定要用异步了,一个tab一个线程,管理一个页面
burn3tt 2007-02-25
  • 打赏
  • 举报
回复
晕撒,如果是BS模式的,根本不要开线程,IIS是干啥的?就是帮你优化线程的。
至于WebForm下的Tab浏览的效果,肯定是用到多线程的。不过不是你来写的,是由浏览器自动完成的。

有些浏览器会在解释html或者js代码的时候出现界面停止响应的现象,是浏览器做的不健壮,代码不规范。

楼上的说的很对,数据没有读完,是不能生成页面的。
BS运行原理是从服务器下载下来代码,并由浏览器解释执行。WebForm的多线程最多的效率是在取代码上,对用户界面的显示是没有直接的帮助的。
winner2050 2007-02-25
  • 打赏
  • 举报
回复
WebForm上用多线程有意义吗?数据都没读完,怎么生成网页?还请来点真实例。
====================================
不是!
是用winfrom作个浏览器。
hjksoft 2007-02-25
  • 打赏
  • 举报
回复
UP
zzmsl 2007-02-25
  • 打赏
  • 举报
回复
WebForm上用多线程有意义吗?数据都没读完,怎么生成网页?还请来点真实例。
winner2050 2007-02-25
  • 打赏
  • 举报
回复
看来大家都同意我。
实现那个效果是用多线程异步执行。

妈 的,那两个白痴,跟我说什么卵这个是多任务。
妈 的,像杀毒软件实时显示扫描进度如果不是多线程,我就切!!
jx0797 2007-02-25
  • 打赏
  • 举报
回复
创建窗口的就是UI线程,用这个线程做其他的长时间的任务,窗口界面当然会假死了
viena 2007-02-25
  • 打赏
  • 举报
回复
应该是异步的吧~
rocy520 2007-02-25
  • 打赏
  • 举报
回复
路过
jilate 2007-02-25
  • 打赏
  • 举报
回复
不知道网页多线程怎么弄,
有的时候,运行一些javascript的时候,就会出现网页假死现象
比如通过js创建一个excel对象,然后通过该js打开一个web上的excel(通过文件留发送excel)
网页就停顿了,机子慢的话,还要不少时间呢。
不知道有没有办法通过多线程解决
加载更多回复(11)

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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