This document discusses non-blocking strategies for foreign function interfaces (FFI) in Pharo. It presents 6 strategies for making FFI calls in a non-blocking way: 1) using a thread per call, 2) using worker threads, 3) running calls on the VM thread, 4) running calls on the main thread, 5) using a global interpreter lock, and 6) using thread-safe interpreters. It evaluates the tradeoffs of each strategy and describes implementations in Pharo, including the ThreadedFFI plugin which uses strategies 1, 2, and 3. Preliminary results show the threaded strategies improve performance of parallel long calls over the single-threaded strategy.