diff options
author | Björn Gustavsson <[email protected]> | 2017-06-07 16:43:35 +0200 |
---|---|---|
committer | Björn Gustavsson <[email protected]> | 2017-06-07 16:43:35 +0200 |
commit | 76137cbf49487e07bfcd72d5789bdfde7ef50a92 (patch) | |
tree | 1b928cf1c5d88792bd402d81ef5ebcec89190f12 /erts/emulator/test | |
parent | 1ee59088c52ff18e3917d7f453a5947d0fe1cadd (diff) | |
parent | acd8571b35756c3fdc389807c34d80c9d44435e7 (diff) | |
download | otp-76137cbf49487e07bfcd72d5789bdfde7ef50a92.tar.gz otp-76137cbf49487e07bfcd72d5789bdfde7ef50a92.tar.bz2 otp-76137cbf49487e07bfcd72d5789bdfde7ef50a92.zip |
Merge branch 'bjorn/erts/fix-sys-task-cleanup'
* bjorn/erts/fix-sys-task-cleanup:
Make sure that asynchronous replies are not lost
Diffstat (limited to 'erts/emulator/test')
-rw-r--r-- | erts/emulator/test/binary_SUITE.erl | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/erts/emulator/test/binary_SUITE.erl b/erts/emulator/test/binary_SUITE.erl index 355be7a36d..4d17276e5c 100644 --- a/erts/emulator/test/binary_SUITE.erl +++ b/erts/emulator/test/binary_SUITE.erl @@ -1358,17 +1358,19 @@ do_trapping(N, Bif, ArgFun) -> io:format("N=~p: Do ~p ~s gc.\n", [N, Bif, case N rem 2 of 0 -> "with"; 1 -> "without" end]), Pid = spawn(?MODULE,trapping_loop,[Bif, ArgFun, 1000, self()]), receive ok -> ok end, - receive after 100 -> ok end, Ref = make_ref(), case N rem 2 of - 0 -> erlang:garbage_collect(Pid, [{async,Ref}]), - receive after 100 -> ok end; + 0 -> + erlang:garbage_collect(Pid, [{async,Ref}]), + receive after 1 -> ok end; 1 -> void end, - exit(Pid,kill), + exit(Pid, kill), case N rem 2 of - 0 -> receive {garbage_collect, Ref, _} -> ok end; - 1 -> void + 0 -> + receive {garbage_collect, Ref, _} -> ok end; + 1 -> + void end, receive after 1 -> ok end, do_trapping(N-1, Bif, ArgFun). |