提交 31542341 编写于 作者: I Ilya Kirillov

FIR IDE: do not run STATUS phase under lock

上级 093c8bfb
......@@ -23,16 +23,12 @@ import kotlin.concurrent.withLock
internal class FirPhaseRunner {
private val superTypesBodyResolveLock = ReentrantLock()
private val statusResolveLock = ReentrantLock()
private val implicitTypesResolveLock = ReentrantLock()
fun runPhase(firFile: FirFile, phase: FirResolvePhase, scopeSession: ScopeSession) = when (phase) {
FirResolvePhase.SUPER_TYPES -> superTypesBodyResolveLock.withLock {
runPhaseWithoutLock(firFile, phase, scopeSession)
}
FirResolvePhase.STATUS -> statusResolveLock.withLock {
runPhaseWithoutLock(firFile, phase, scopeSession)
}
FirResolvePhase.IMPLICIT_TYPES_BODY_RESOLVE -> implicitTypesResolveLock.withLock {
runPhaseWithoutLock(firFile, phase, scopeSession)
}
......@@ -45,9 +41,6 @@ internal class FirPhaseRunner {
FirResolvePhase.SUPER_TYPES -> superTypesBodyResolveLock.withLock {
runPhaseWithCustomResolveWithoutLock(resolve)
}
FirResolvePhase.STATUS -> statusResolveLock.withLock {
runPhaseWithCustomResolveWithoutLock(resolve)
}
FirResolvePhase.IMPLICIT_TYPES_BODY_RESOLVE -> implicitTypesResolveLock.withLock {
runPhaseWithCustomResolveWithoutLock(resolve)
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册