diff options
Diffstat (limited to 'src/core/basetypes/MCOperation.cc')
-rw-r--r-- | src/core/basetypes/MCOperation.cc | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/core/basetypes/MCOperation.cc b/src/core/basetypes/MCOperation.cc index 5587f2f6..b6848d78 100644 --- a/src/core/basetypes/MCOperation.cc +++ b/src/core/basetypes/MCOperation.cc @@ -70,3 +70,16 @@ dispatch_queue_t Operation::callbackDispatchQueue() return mCallbackDispatchQueue; } #endif + +void Operation::performMethodOnCallbackThread(Method method, void * context, bool waitUntilDone) +{ +#if __APPLE__ + dispatch_queue_t queue = mCallbackDispatchQueue; + if (queue == NULL) { + queue = dispatch_get_main_queue(); + } + performMethodOnDispatchQueue(method, context, queue, waitUntilDone); +#else + performMethodOnMainThread(method, context, waitUntilDone); +#endif +} |