u013890437
茂盛的小绿芽
采纳率75%
2015-12-07 04:24 阅读 2.5k
已采纳

java线程,spring 线程池

5

大家好:
我现在有几个疑惑的地方
1、如果使用spring 线程池,或者java自带的线程池,那应用程序中的所有线程都
受到创建的这个线程池管理,还是只通过线程池.execute加进去的才被管理。
2、spring MVC 线程池threadPoolTaskExecutor, 配置了最少活跃线程10个,最大10个,
那如果线程池中已经有10个活跃的线程在执行,如果继续往线程池中execute,此时的线程
是出于等待,还是直接挂掉,这个spring的线程池有配置项做这个么。

        3、如果一个线程new出对象,没有start()或者没有加入到线程池中,那么此时这个new出的
        线程对象浪费资源么,结束 难道就是java内存回收时么?

        请大家帮我指明一下,小弟在此谢过。C币不多,聊表谢意。
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

1条回答 默认 最新

  • 已采纳
    u013890437 茂盛的小绿芽 2015-12-07 08:15

    我觉得我已经可以结贴啦:
    1、只通过线程池启动的线程,才会受到线程池管制。
    2、spring 线程池有自己的实现,看spring的源码,他会有一定的步骤,首先判断线程池中是否有闲的线程,如果没有,将任务加到队列中,而队列是自己
    配置的,最后如果都没有,则挂掉。
    3、线程new Thread() 只是创建了一个任务,并没有start() 或者 加到线程池中,相比只是创建一个java对象,回收机制会回收。

    点赞 评论 复制链接分享

相关推荐