首页 新闻 会员 周边

做多语言时关于Thread.CurrentThread.CurrentCulture联想到的疑惑。

0
悬赏园豆:10 [已解决问题] 解决于 2013-11-02 18:37

做多语言时,在渲染页面时有下面伪代码

Thread.CurrentThread.CurrentCulture = 中文
或
Thread.CurrentThread.CurrentCulture = 英文

我比较不解的是:

1.这是设置服务器线程的语言么?那这么设置不是变成全局的了么,那假如有第2个人访问网站,岂不是他的语言也会随着第1个用户的改变而改变。

2.还是说iis会为每一个访问者分配1个线程?那如果有1000个人同时访问岂不是会有1000个线程?iis的线程他是怎么处理的呢?

wdwwtzy的主页 wdwwtzy | 初学一级 | 园豆:114
提问于:2013-11-01 14:11
< >
分享
最佳答案
0

1.设置语言是与线程一一对应的,不存在全局

2.IIS是会分配线程给每个用户,但是线程池中等待调度的线程,你如果在同一时刻有1000人访问,那线程数大约是访问数的10%~20%就能满足要求了。

收获园豆:10
56180825 | 小虾三级 |园豆:1756 | 2013-11-01 21:37

哦,那不说用户,说请求。就是每个请求都会有一个单独独立的线程来渲染这个页面是吧,等到下一个请求的时候又换一个线程了,所以不存在互相影响的情况,这样理解?

wdwwtzy | 园豆:114 (初学一级) | 2013-11-01 22:39

@wdwwtzy: 是

56180825 | 园豆:1756 (小虾三级) | 2013-11-01 22:41

@56180825: 多谢解惑。那是不是也可以这样理解,假如有1000个请求同时发出,那么iis就要同时产生1000个线程来渲染页面?

wdwwtzy | 园豆:114 (初学一级) | 2013-11-01 22:43

@wdwwtzy: 不会,因为可能只需要50-100个线程就可以了(具体无法考证),程序的执行速度很快,可能地3个请求到来的时候第1个请求已经结束,然后第1个线程分配给第3个请求。

56180825 | 园豆:1756 (小虾三级) | 2013-11-02 09:17
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册