At the moment, I think only one thread can perform a call to the retrieve routine, but some people have complained about that since it is pretty restrictive. So we definitely need to look into that. The easiest might be to disable the GC in the Eiffel code rather than in the C code for the callback.