为什么 RecursiveTask 在 fork join 中实现 Serializable?
Why RecursiveTask implements Serializable in fork join?
我计划通过扩展 RecursiveTask
class 在我的应用程序中使用 Fork/Join。我注意到它是 Serializable
。我有一些我想保留在其中的不可序列化类型的字段。我可以让它们成为瞬态的,但是在一些 serde 操作之后它们会变成空的,我不希望那样。
我想知道为什么 RecursiveTask
class 将 Serializable
接口实现为
我认为没有必要。另外,扩展它的class实例在什么情况下会被序列化?
RecursiveTask 从 ForkJoinTask 继承了 Serializable 并在此处记录:https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ForkJoinTask.html
ForkJoinTasks are Serializable, which enables them to be used in extensions such as remote execution frameworks. It is sensible to serialize tasks only before or after, but not during, execution. Serialization is not relied on during execution itself.
我计划通过扩展 RecursiveTask
class 在我的应用程序中使用 Fork/Join。我注意到它是 Serializable
。我有一些我想保留在其中的不可序列化类型的字段。我可以让它们成为瞬态的,但是在一些 serde 操作之后它们会变成空的,我不希望那样。
我想知道为什么 RecursiveTask
class 将 Serializable
接口实现为
我认为没有必要。另外,扩展它的class实例在什么情况下会被序列化?
RecursiveTask 从 ForkJoinTask 继承了 Serializable 并在此处记录:https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ForkJoinTask.html
ForkJoinTasks are Serializable, which enables them to be used in extensions such as remote execution frameworks. It is sensible to serialize tasks only before or after, but not during, execution. Serialization is not relied on during execution itself.