`disable_sigint` is the public API so we better use it instead of `sigatomic_(begin|end)`. A side effect is that it makes PyCall work with JuliaInterpreter.jl ouf-of-the-box and avoid issues like https://discourse.julialang.org/t/23560 and https://github.com/JuliaDebug/JuliaInterpreter.jl/issues/219. This is because JuliaInterpreter.jl uses `disable_sigint` to workaround the issues related to the signal handler https://github.com/JuliaDebug/JuliaInterpreter.jl/pull/108. @stevengj Repeating what I asked in #683: > @stevengj You didn't want to put `disable_sigint` for _all_ `ccall` https://github.com/JuliaPy/PyCall.jl/pull/574#discussion_r219716154 but maybe replacing only the `sigatomic_begin`-`sigatomic_end` pairs is OK?