diff --git a/kotlin-native/runtime/src/main/cpp/Runtime.cpp b/kotlin-native/runtime/src/main/cpp/Runtime.cpp index 93d7bccf9e7..84b0cafa181 100644 --- a/kotlin-native/runtime/src/main/cpp/Runtime.cpp +++ b/kotlin-native/runtime/src/main/cpp/Runtime.cpp @@ -107,6 +107,9 @@ RuntimeState* initRuntime() { result->memoryState = InitMemory(false); // The argument will be ignored for legacy DestroyRuntimeMode result->worker = WorkerInit(true); firstRuntime = atomicAdd(&aliveRuntimesCount, 1) == 1; + if (CurrentMemoryModel == MemoryModel::kExperimental) { + RuntimeCheck(firstRuntime, "Experimental MM does not support multiple mutator threads yet"); + } break; case DESTROY_RUNTIME_ON_SHUTDOWN: // First update `aliveRuntimesCount` and then update `globalRuntimeStatus`, for synchronization with