多线程问题,菜鸟提问

ooo19841080xinxin 2007-11-19 12:30:47
我不理解单CPU的情况下,多线程下载是如何发挥他的优势的,我的理解是一个CPU的情况下,单线程和多线程应该一样吧.
另外,多线程一般都用在什么情况下?
...全文
79 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
lixkyx 2007-12-06
  • 打赏
  • 举报
回复
而如果网络通信是完美的,没有时延或者错误,那么多线程和单线程的速度是一样的,甚至可能更慢一点点,因为线程的切换也需要开销。
lixkyx 2007-12-06
  • 打赏
  • 举报
回复
在单CPU系统里,多线程下载只有当网络情况不好的时候才比单线程有优越性,因为一个线程在下载时可能因为要读取的数据块难以获得或者网络拥塞导致数据包丢失,结果迟迟不能工作完毕,而另一个线程就可以接替工作(除非它同时也遇到同样的问题,而这个概率是较小的),从而整体上来说,总的效率就提高了。线程越多,相应的效率就会越高。
ftgreat 2007-11-19
  • 打赏
  • 举报
回复
多线程使得相同程序的不同线程间交互方便,他们可以更方便地共享资源。
lpingxh 2007-11-19
  • 打赏
  • 举报
回复
我的理解是可以提高用户的体验,比如服务器可以并发的接受多个请求,单CPU的情况下,通过时间分片机制,耗时少的可以很快完成运行
wxy32 2007-11-19
  • 打赏
  • 举报
回复
多线程下载我的理解是文件分块读取,最后合并,这样应该会把网络延迟产生的等降到最低.
yulin001122 2007-11-19
  • 打赏
  • 举报
回复
谁说一定多线程比单线程快了?


一般长时间等待的操作可以放在新的线程里面, 比如NET,数据库等等。

一款强大的反黑客工具,适用于Windows 2000/XP/2003/Vista操作系统,用于查探系统中的幕后黑手(木马后门)并作出处理,当然使用它需要用户有一些操作系统的知识。

一.界面

与上一版本界面相比有了很大改善,用户可自行查看.具体如下:

1,修复了上一版本中在英文操作系统中中文显示为乱码的问题.(在此感谢蛋白兔子参与测试)
2,重新为IceLight设计了一款新图标,菜单使用OFFICE XP的风格.

二.系统

1,进程\线程中增加了挂起与恢复功能,
2,不使用驱动,通杀隐藏进程,侦测伪PID,查看、恢复SSDT
3,具有网络查看,服务,检测功能.

三.自启动

这是一个新增的模块区域,主要用来管理系统中自动启动的信息.当然可能还存有
不完善地方,所以还有待考验.

该区域中包括:注册表启动\IE浏览器\Winlogon\开始菜单启动


四.杀进程

1,不使用驱动的前提下,结束冰刃就像切豆腐
2,不使用V1.1.31中的DLL,直接代码注入干进程
3,即使无法openprocess也能尽量结束它.

五.自保护

主要是在ring3模式下HOOK了NtOpenThread,NtOpenProcess,NtTerminateThread,NtTerminateProcess,还有
子类了 WM_CLOSE,WM_QUIT 消息.可防止被一些菜鸟所写的恶意程序Kill掉.但对于ring0无效..
为了弥补这缺点,在ethread结构中的flag置PS_CROSS_THREAD_FLAGS_SYSTEM位,过PspTerminateProcess NtTerminateProcess应该是没什么问题.另保护了PID.

如果你以IceLight.exe /s 的方式启动,那么连RING0都无法结束它。(对于菜鸟来说)
只能按下Shift+Ctrl+F1来退出。

六.不足

目前IceLight尚不能枚举消息钩子及窗口,我会努力搞的!

Updata:
Debug Version:08年2月16日晚,公测版本在VBGOOD发布。
Version 1.0:08年2月17日,1.0版本发布。一下子就加入N多新功能和修正N多小强。
目前可以注入DLL结束进程和管理服务、注册表。
Version 1.1:08年2月19日,1.1版本发布。修正第一次启动报错和强制关机变注销的小强。-____-!加入启动项管理,加入反隐藏,反伪PID及进程分级功能,还有一些零碎的BUG。。不多说了……
Version 1.1.22:08年2月19日,该名为IceLight,加入僵尸检测,网络状态监测,修正几个小BUG..等等
还是还原不了SSDT,哎,菜鸟
Version 1.1.31:3月2日,加入线程枚举,显示模块数、检测更新、在线提问。+小改动,同时结束多个进程
Version 1.2.38:3月9日,放弃DLL注入结束进程,改用代码注入。另新增保护PID、隐藏进程功能。使用Knlps强杀进程,不过稳定性不太好.
Version 1.3.16:3月30日,一次巨大的改动,加入枚举SSDT,优化了代码,重弄了界面,一级一些零碎的小东西.
Version 1.3.44:4月4日,清明节,差点把源码弄丢了..随机标题换了.加入了超级自我保护,超强枚举进程.

最后欢迎广大网友提供宝贵的建议及BUG反馈!

By GGY 2008.04.04
QQ 349462015 GGYBlog.Cn

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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