社区
C#
帖子详情
菜鸟又举手发问了!!!--为什么大家写windows服务很多都开线程来做?
xinxincao
2004-04-21 11:23:59
在不用多线程地情况下,什么时候应该开线程来做?
开线程和不开有什么区别?
为什么在写windows服务时,好多人开了线程?而其他的程序,比较少用到?
问题比较菜,大家不要笑,关键是读书时没学好
...全文
61
15
打赏
收藏
菜鸟又举手发问了!!!--为什么大家写windows服务很多都开线程来做?
在不用多线程地情况下,什么时候应该开线程来做? 开线程和不开有什么区别? 为什么在写windows服务时,好多人开了线程?而其他的程序,比较少用到? 问题比较菜,大家不要笑,关键是读书时没学好
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lizhongkun
2004-04-22
打赏
举报
回复
自己补补 操作系统原理 吧!!
xinxincao
2004-04-21
打赏
举报
回复
up
lj915
2004-04-21
打赏
举报
回复
呵呵~~~`毕业两年来,都把以前学的东西都忘掉了,希望我没有说错(错也不要错得太离谱,嘻嘻~~~~~)
楼主还是看看《操作系统原理》吧,把线程和进程的概念都弄明白,你就会明白多线程与单线程的区别了。
lj915
2004-04-21
打赏
举报
回复
而且使用线程可以较好的充分利用系统资源?
能仔细解释一下吗?
我不开线程,我的程序应该就是一个进程,而开了线程的话,程序应该是只有一个线程的进程,我想知道两者的区别
------------------------
可以这样理解,因为现在的WINDOWS虽然说是多任务系统,但在单位时间内还是只能处理一个线程,只不过这个单位时间很小很小加上计算机的速度快,我们察觉不出来而已,如果只有一个线程,那么系统在完成这个线程任务以后就把资源留给下一个等待中的线程,所以效率没有那么高,而如果有多个线程的话(线程与进程的区别,楼主请参阅一下《操作系统原理》),那么系统就会为每一个线程都分配资源(这些线程都在轮候系统分配给它们的资源),所以看起来所有线程都是在同时工作一样(因为时间间隔小),所以效率就比单线程的程序要高效,但如果开太多线程的话,会耗尽CPU和内存资源的。
sshwsfc
2004-04-21
打赏
举报
回复
给你举一个例子
你做了一个服务器,等待客户连接
如果你只用一个线程的话,那么当你listen的时候,整个程序都会定下来等着,就像是死记了一样。
但是要使用多线程的话,就可以另开一个线程等待连接,主程序可以干其他的事情
建议先看看网络程序,然后再看看
turnmissile
2004-04-21
打赏
举报
回复
服务需要高效的回复能力。
而且能更好的利用process的时间片。
ermachao
2004-04-21
打赏
举报
回复
线程和进程的区别在于在内存的使用方式不一样。
xinxincao
2004-04-21
打赏
举报
回复
up
xinxincao
2004-04-21
打赏
举报
回复
up
xinxincao
2004-04-21
打赏
举报
回复
to gxxlc(冰良):
而且使用线程可以较好的充分利用系统资源?
能仔细解释一下吗?
我不开线程,我的程序应该就是一个进程,而开了线程的话,程序应该是只有一个线程的进程,我想知道两者的区别
whalefish2001
2004-04-21
打赏
举报
回复
呵呵,大家都是这样用,反正我也这样用,如果写windows 服务只是给你使用(不给其他application 可以不开线程,当多个进程都要访问它时,也为了减少内存的占用吧?)
服务一般都是开线程来做的吧。
hunterzhi
2004-04-21
打赏
举报
回复
要多个任务一起运行 ,就要多个线程
gxxlc
2004-04-21
打赏
举报
回复
"windows服务"?你是只windows应用程式么?
在有窗体的应用程式中,为了不让界面在进行长时间的计算操作时,死掉(不能动).一般情况下,把耗时的操作放在工作线程中完成.这样界面就不会死了.
而且使用线程可以较好的充分利用系统资源.
阿甘
2004-04-21
打赏
举报
回复
简单的说就是多线程可以同时做多个事情
而服务程序一般都有要同时完成多个任务的情况
xinxincao
2004-04-21
打赏
举报
回复
up
正则表达式?!的理解
查找不以baidu
开
头的字符串 baidu.com sina.com.cn 正则:^(?!baidu).*$ 匹配结果就是第2行,也就是第1行被排除了 这里使用了零宽度断言(?!exp),注意,我们有一个向前查找的语法(也叫顺序环视) (?=exp) (?=exp) 会查找exp之前的【位置】如果将等号换成感叹号,就变成了否定语义,也就是说查找的位置的后面不能是exp 一般情况下?!要与特定的...
什么是多
线程
菜鸟
入门
网上
很多
资料对多
线程
都有详细的描述与理解,本
菜鸟
刚刚入门JAVA对多
线程
方面不是很熟悉,在看过
很多
视屏,以及相关博客,书籍通过自己的语言来描述对JAVA多
线程
的理解,给一些和我一样的
菜鸟
一起交流,
写
的不好的地方请各位大神多多指正,互相学习,共同进步。 1.什么是多
线程
? 是指一个应用程序同时执行多个任务,一般来说一个任务就是一个
线程
,而一个应用程序有一个以上的
线程
我们称之为多
线程
。 2.什么
C# 多
线程
(
菜鸟
教程及爱整理)
C# 多
线程
--
菜鸟
教程
线程
被定义为程序的执行路径。每个
线程
都定义了一个独特的控制流。如果您的应用程序涉及到复杂的和耗时的操作,那么设置不同的
线程
执行路径往往是有益的,每个
线程
执行特定的工作。
线程
生命周期
线程
生命周期
开
始于 System.Threading.Thread 类的对象被创建时,结束于
线程
被终止或完成执行时。 下面列出了
线程
生命周期中的各种状态: 未启动状态:当
线程
实例被创建但 Start 方法未被调用时的状况。 就绪状态:当
线程
准备好运行并等待 CPU 周期时的状况。 不可运行状态:
div如何添加滚动条?
div 添加滚动条只需要指定 overflow 属性为 auto 即可。 以下实例设置了 div 水平滚动条: 实例 <div style="height:300px;width:70px;overflow:auto;background:#EEEEEE;">
菜鸟
教程 -- 学的不仅是技术,更是梦想!!!
菜鸟
教程 -- 学的不仅是技术,更是梦想!!!
菜鸟
教程 -- 学的不仅是技术,更是梦想!!!
菜鸟
教程 -- 学的不仅是技术,更是梦想!!! </div>.
为什么Mysql使用多
线程
,而Oracle使用多进程
为什么Mysql使用多
线程
,而Oracle使用多进程
菜鸟
不明白,于是搜索了一下,现在大致整理出来如下: 传统的unix系统,早期没有提供多
线程
,只有多进程。linux是最近的版本才加入多
线程
支持,以前一直都是多进程。
windows
很早就支持多
线程
,本地应用大部分也是多
线程
。因此oracle在
windows
上一直都是多
线程
,在unix上才是多进程。多进程的好处是,一个进程崩溃不会影
C#
110,537
社区成员
642,576
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章