Я пробую сопрограммы Котлина с официальным руководством с использованием IntelliJ IDEA на Mac OS. В этом разделе есть совет по использованию опции -Dkotlinx.coroutines.debug
JVM для получения подробного вывода журнала. Я открыл «Справка / Изменить пользовательские параметры виртуальной машины ...» и в открытом файле idea.vmoptions добавил строку -Dkotlinx.coroutines.debug
.
idea.vmoptions содержание после редактирования:
# custom IntelliJ IDEA VM options
-Xms128m
-Xmx750m
-XX:ReservedCodeCacheSize=240m
-XX:+UseCompressedOops
-Dfile.encoding=UTF-8
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
-ea
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-Djdk.http.auth.tunneling.disabledSchemes=""
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-Xverify:none
-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log
-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof
-Dkotlinx.coroutines.debug
Но после повторного запуска кода вы получите:
[main] I'm computing a piece of the answer
[main] I'm computing another piece of the answer
[main] The answer is 42
Process finished with exit code 0
В то время как ожидаемый результат:
[main @coroutine#2] I'm computing a piece of the answer
[main @coroutine#3] I'm computing another piece of the answer
[main @coroutine#1] The answer is 42
Что мне здесь не хватает?