ThreadFactory接口的定义是一个按需创建新线程的对象。使用线程工厂消除了对新线程调用的硬连接,使应用程序能够使用特殊的线程子类、优先级等。
我不能够理解术语硬接线调用新线程,我也不能够理解ThreadFactory
的正确使用和目的请解释。谢谢。
阅读依赖注入和控制反转。http://en.wikipedia.org/wiki/Dependency_injection
假设我编写了一个库,而我的库需要创建一个线程。假设你有一个大而复杂的应用程序,你想使用我的库,但是你的应用程序有严格的线程管理策略,它的所有线程都必须通过调用一个特定于应用程序的特殊模块来创建。
如果我的库调用thread .new(),那么你不能使用它,因为它绕过了你的策略,但是如果我的库允许你给我一个ThreadFactory,并且我的库使用你的ThreadFactory来创建它的线程,那么问题就解决了:你可以给我一个ThreadFactory,通过调用你的应用程序的线程管理模块来创建线程。
我一直不能理解调用new的硬连接这个术语线程
基本上你不需要把调用者和线程对象紧密耦合在一起,你可以委托给ThreadFactory。我能想到的一个好处是,假设你想模拟单元测试的线程调用,你可以很容易地实现它
我也不能理解的正确使用和目的ThreadFactory
见http://javahowto.blogspot.in/2011/11/why-use-threadfactory.html