1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-10 23:44:24 +00:00

Add ChildProcessManager

The new class hold a list of ChildProcesses and periodically checks
their return value until they report termination. On Linux this check
is necessary to avoid leaving zombie processes behind.
This commit is contained in:
attila 2024-01-05 15:35:07 +01:00
parent 76b9b28658
commit 0611baf1be
43 changed files with 647 additions and 0 deletions

View file

@ -916,6 +916,7 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_core/containers/juce_SparseSet.h"
"../../../../../modules/juce_core/containers/juce_Variant.cpp"
"../../../../../modules/juce_core/containers/juce_Variant.h"
"../../../../../modules/juce_core/detail/juce_CallbackListenerList.h"
"../../../../../modules/juce_core/files/juce_AndroidDocument.h"
"../../../../../modules/juce_core/files/juce_common_MimeTypes.cpp"
"../../../../../modules/juce_core/files/juce_common_MimeTypes.h"
@ -1292,6 +1293,8 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_events/broadcasters/juce_ChangeListener.h"
"../../../../../modules/juce_events/broadcasters/juce_LockingAsyncUpdater.cpp"
"../../../../../modules/juce_events/broadcasters/juce_LockingAsyncUpdater.h"
"../../../../../modules/juce_events/interprocess/juce_ChildProcessManager.cpp"
"../../../../../modules/juce_events/interprocess/juce_ChildProcessManager.h"
"../../../../../modules/juce_events/interprocess/juce_ConnectedChildProcess.cpp"
"../../../../../modules/juce_events/interprocess/juce_ConnectedChildProcess.h"
"../../../../../modules/juce_events/interprocess/juce_InterprocessConnection.cpp"
@ -1329,6 +1332,7 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_events/native/juce_WinRTWrapper_windows.h"
"../../../../../modules/juce_events/timers/juce_MultiTimer.cpp"
"../../../../../modules/juce_events/timers/juce_MultiTimer.h"
"../../../../../modules/juce_events/timers/juce_TimedCallback.h"
"../../../../../modules/juce_events/timers/juce_Timer.cpp"
"../../../../../modules/juce_events/timers/juce_Timer.h"
"../../../../../modules/juce_events/juce_events.cpp"
@ -2861,6 +2865,7 @@ set_source_files_properties(
"../../../../../modules/juce_core/containers/juce_SparseSet.h"
"../../../../../modules/juce_core/containers/juce_Variant.cpp"
"../../../../../modules/juce_core/containers/juce_Variant.h"
"../../../../../modules/juce_core/detail/juce_CallbackListenerList.h"
"../../../../../modules/juce_core/files/juce_AndroidDocument.h"
"../../../../../modules/juce_core/files/juce_common_MimeTypes.cpp"
"../../../../../modules/juce_core/files/juce_common_MimeTypes.h"
@ -3237,6 +3242,8 @@ set_source_files_properties(
"../../../../../modules/juce_events/broadcasters/juce_ChangeListener.h"
"../../../../../modules/juce_events/broadcasters/juce_LockingAsyncUpdater.cpp"
"../../../../../modules/juce_events/broadcasters/juce_LockingAsyncUpdater.h"
"../../../../../modules/juce_events/interprocess/juce_ChildProcessManager.cpp"
"../../../../../modules/juce_events/interprocess/juce_ChildProcessManager.h"
"../../../../../modules/juce_events/interprocess/juce_ConnectedChildProcess.cpp"
"../../../../../modules/juce_events/interprocess/juce_ConnectedChildProcess.h"
"../../../../../modules/juce_events/interprocess/juce_InterprocessConnection.cpp"
@ -3274,6 +3281,7 @@ set_source_files_properties(
"../../../../../modules/juce_events/native/juce_WinRTWrapper_windows.h"
"../../../../../modules/juce_events/timers/juce_MultiTimer.cpp"
"../../../../../modules/juce_events/timers/juce_MultiTimer.h"
"../../../../../modules/juce_events/timers/juce_TimedCallback.h"
"../../../../../modules/juce_events/timers/juce_Timer.cpp"
"../../../../../modules/juce_events/timers/juce_Timer.h"
"../../../../../modules/juce_events/juce_events.cpp"