• 全部
  • .NET Framework
  • ASP
  • Web Services
  • .NET互联网桌面应用
  • VB
  • 图表区
  • 分析与设计
  • 组件/控件开发
  • AppLauncher
  • 问答

Help me,Web页迟延显示的问题

czawp 2004-11-03 03:57:47
主要是想控制网页的显示进度(就像打开网页之前,网页进度条走满的之前的那个状态,可能是Page_Load函数的执行进度)。我使用asp.net(C#),做了一个页面,有一个静态变量:faga。使用线程(本线程与本页无关)循环随机在0~2之间为faga付值。我点页面上的按钮刷新本页当faga>1时完全显示本页,如果faga<=1则等待直到faga>1(不论之后faga<=1)完全显示本页,该怎么做呢?
谢谢了!
...全文
74 点赞 收藏 12
写回复
12 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
czawp 2004-11-06
回复
leisang 2004-11-05
我明白了,其实每次点击再分配卷纸可能更简单,虽然增加了一些数据库负担。
回复
czawp 2004-11-05
非常感谢,其实我这部分也没想好。对于分卷线程已经没有问题了,但在显示这个问题(就是上面提到的问题)上,还没有想好,主要是不能让老师等(老师判卷时间是有限的,一张接一张的判,当然有必要时还是要等的),还要依照下面的分法分配(这是我之前问的题):
我在做一个网上判卷的Asp.net(C#)程序,挺复杂的,库为Oracle,在分配卷纸的问题上就卡住了。有30个老师,判几万张卷纸,要随机给他们分配卷纸,条件是:两个人或两个人以上不能同时判同一张卷,某个老师判完了某张卷纸就不能再判这张卷纸,卷纸出分或为问题卷(见后面解释)就不能再判。出分(和出问题)条件:每个卷纸第1次判为1评,第2次判为2评,如果|1评-2评|<4,出分为(1评+2评)/2;否则就3评,以此类推,到4评还没出分就判为问题卷。我想利用线程分配卷纸(如果直接写不用线程,不计算完不会显示网页),希望当某老师登陆时计算出他应分配的卷纸和点"下一张"应分配的预设卷纸,在点"下一张"时给出之前计算出的预设卷纸,并给出一个线程计算他再次点"下一张"应分配的预设卷纸,对于计算老师点"下一张"算出的预设卷纸时应不把在他之前分配的其他老师的没打分的预设卷纸计算在内。
谢谢了!
回复
czawp 2004-11-05
但,老师们是不能等的呀!
回复
jasonboy 2004-11-04
帮忙up
回复
czawp 2004-11-04
自己顶一下!
回复
leisang 2004-11-04
你的想法是不对的,进度也好多线程也好都是在服务端的,网页是iis解释完了才传到客户端的。
回复
okwinds 2004-11-04
置标志位public bool型的,然后设定一个Timer,另起线程监控这个标志位,不过我想知道,你干嘛要这么麻烦的算东西,而且不知道你有没有考虑过系统开销?如果你这个是Web程序的,我可以肯定有上百人同时在线使用这个页面的话,你的IIS就快down了
回复
czawp 2004-11-04
不好意思,可能说得不明白!我是想通过一个线程控制Web页的生成进度(或生成)。其实就是起始生成了一个静态线程计算用户下一次的任务负责,在用户提交需要下一次任务时返回给用户,但计算量很大在用户提交需要下一次任务时不一定能计算完,所以需要在线程计算完之前不为用户生成任务Web页。在Page_Load里使用Thread.Sleep(0)是可以的,Page_Load在一直等,但如何计算完唤醒不知道如何做到!
回复
okwinds 2004-11-04
太强了,这位大哥,看看基础理论吧
Web是无状态式的服务!
回复
cpio 2004-11-04


你想想BS模式是怎么回事吧

进度条可以通过客户端脚本写
回复
czawp 2004-11-04
再定一下,不是要用
private void Page_Load(object sender, System.EventArgs e)
{
bool fag = true;
while(fag)
{
if(faga<=1) Thread.Sleep(1000);
else fag =false;
}
}
吧?
回复
发帖
.NET技术社区
创建于2007-09-28

5.8w+

社区成员

.NET技术交流专区
申请成为版主
帖子事件
创建了帖子
2004-11-03 03:57
社区公告
暂无公告