【发布时间】:2018-06-04 16:22:32
【问题描述】:
ThreadPoolExecutor 中有 2 个挂钩方法。
这个技术让我想到了模板方法模式,其中abstract类中有hook方法。但是,模板方法的abstract类中的hook方法与ThreadPoolExecutor的不同之处在于:
-
ThreadPoolExecutor类是 concrete,而在 模板方法 模式中定义 hook 方法 的类是abstract -
hook 方法,例如
beforeExecute(Thread t, Runnable r)和afterExecute(Runnable r, Throwable t),在ThreadPoolExecutor中是具体的,带有空的方法体,而hook 模板方法模式的abstract类中的方法是abstract,尽管这两个挂钩方法都是protected,表明它们应该是@987654332 @ 在他们的子类中
所以我的问题是:
-
ThreadPoolExecutor是否属于 模板方法 模式? - 本身就是 hook 方法。 模板方法模式中的独立技术?
【问题讨论】:
标签: java threadpoolexecutor template-method-pattern