【发布时间】:2017-03-10 14:16:58
【问题描述】:
通过阅读here,我看到演员是可重入的,我希望以下情况属实:如果我有一个单一类型的演员ThespianType,但有三个特定的演员ThespianType (T1 、T2 和 T3),那么这不会死锁:
(external client) -> T1.MethodA() -> T2.MethodB() -> T3.MethodC() -> T1.MethodD()
我的问题是:相同的可重入性是否扩展到多种参与者类型?
例如,假设我们有:
- 两种Actor类型
PainterType和BrushType;和 - 每种类型一个演员:画家
P1和刷子B2
现在发生了:
(external client) -> P1.MethodX() -> B2.MethodY() -> P1.MethodZ()
假设MethodZ() 是一个没有阻塞调用的简单方法。
问题:是否会出现死锁(或由于检测到死锁而引发 ServiceFabric 异常)?
【问题讨论】:
标签: azure azure-service-fabric