Prevent starting multiple daemons from Gradle

#KT-24560 fixed
This commit is contained in:
Alexey Tsvetkov
2018-05-23 13:54:12 +03:00
parent 48b55edb03
commit 0b22a3c67b
@@ -339,10 +339,12 @@ internal class GradleCompilerRunner(private val project: Project) : KotlinCompil
private fun logFinish(strategy: String) = log.logFinish(strategy) private fun logFinish(strategy: String) = log.logFinish(strategy)
override fun getDaemonConnection(environment: GradleCompilerEnvironment): CompileServiceSession? { override fun getDaemonConnection(environment: GradleCompilerEnvironment): CompileServiceSession? {
val compilerId = CompilerId.makeCompilerId(environment.compilerFullClasspath) synchronized(this::javaClass) {
val clientIsAliveFlagFile = getOrCreateClientFlagFile(project) val compilerId = CompilerId.makeCompilerId(environment.compilerFullClasspath)
val sessionIsAliveFlagFile = getOrCreateSessionFlagFile(project) val clientIsAliveFlagFile = getOrCreateClientFlagFile(project)
return newDaemonConnection(compilerId, clientIsAliveFlagFile, sessionIsAliveFlagFile, environment) val sessionIsAliveFlagFile = getOrCreateSessionFlagFile(project)
return newDaemonConnection(compilerId, clientIsAliveFlagFile, sessionIsAliveFlagFile, environment)
}
} }
companion object { companion object {