知识问答-线程

1、线程挂起有什么作用?

 线程是靠cpu来运行的,cpu要运行一个线程(不说别的)最起码就是要占用cpu时间,象Windows这样的多任务操作系统,可以允许多个线程同时运行,所谓的同时运行并不是真正的同时运行,而是轮流运行不同的线程,因为cpu速度很快,如果线程不是很多,就会给用户有所有线程在同时运行的错觉。举个例子,系统中有10个线程要运行,如果要求在1秒内所有的线程都运行一遍,则每个线程可运行时间为10分之一秒,也就是如果一个线程已经运行了10分之一秒,系统会停止该线程(或称为挂起该线程),运行下一个线程,当又轮到挂起的线程运行时,系统会从该线程停止的地方运行,这种线程挂起是由系统进行的,即所谓的线程调度。有时候,我们的线程暂时没有数据处理,我们也可以通过一些API来使自己的线程挂起,当系统检测到线程被用户挂起时,就算轮到该线程系统也不会运行该线程,而是直接去运行下一个线程,这种情况下,除非用户使该线程退出挂起状态,否则系统不会运行该线程。从这个意义上来讲,一个线程挂起将会给其他线程赢得更多的运行时间(或机会),也就节约了CPU的时间资源。

2、什么是线程池,有什么作用?

当单个任务处理的时间很短而请求的数目却是巨大的情况下,线程池是非常好的选择。因为创建线程开销比较大,当单个任务处理的时间很短而请求的数目却是巨大的情况下,线程池是非常好的选择。若为每个请求创建新线程,在创建和销毁线程上花费的时间和消耗的系统资源,要比花在处理任务上的时间和资源更多。当你的程序需要频繁地创建销毁一些相同的线程时,就可以先创建一定数量的线程,让他们睡眠,当需要线程的时候,就从里面拿一个出来跑,跑完了再放回去,这样就增加了效率。












  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值