使用运算符状态(或非钥匙状态),每个操作员状态都绑定到一个并行操作员实例
上面的报价来自官方Flink网站。每个并行操作员实例可能具有线程池。当这些线程访问运算符状态时(如上所述,每个并行操作员实例可以具有一个操作员状态),它会遇到线程安全问题吗?我应该将操作员状态与以下术语一起使用Java中的术语?
synchronize(stateInstance){
//update state
}
我想知道您是什么意思线程池,它将如何与Flink托管状态进行交互?
如果您在问题中提到的线程池是在Flink Taskmanager上运行的Flink Task。然后是线程安全。Flink是一个分布式系统。它使用并行操作员实例执行任务,因此每个操作员实例的托管状态自然是线程安全的。