View source on GitHub |
Destroy Keras' multiprocessing pools to prevent deadlocks.
tf.keras.experimental.terminate_keras_multiprocessing_pools(
grace_period=0.1, use_sigkill=False
)
In general multiprocessing.Pool can interact quite badly with other, seemingly unrelated, parts of a codebase due to Pool's reliance on fork. This method cleans up all pools which are known to belong to Keras (and thus can be safely terminated).
grace_period
: Time (in seconds) to wait for process cleanup to propagate.use_sigkill
: Boolean of whether or not to perform a cleanup pass using
SIGKILL.A list of human readable strings describing all issues encountered. It is up to the caller to decide whether to treat this as an error condition.