Slide 13
Slide 13 text
13
何が問題だったか
● defer は、関数の最後に実行される
● patch() と unpatch() は内部でmutexのlockを使っている
● テストケースは逐次実行されるが、 Test_XXXは、並列に実行される
● Test_XXX() とその他の Testが一緒に走り、unlock 前に次の lock をかけようとした
↓
● 本来、よりスコープの狭いt.Run内のコールバック関数で patch() の unpatch()(mutex
のlock解除)を実行しないといけない