wrmorgue
(Nikita Rossik)
1
I want to get some logs when working with Structured/Unstructured Concurrency:
I found some debug log in source code of Task.cpp:
} else if (taskIsUnstructured(taskCreateFlags, jobFlags)) {
SWIFT_TASK_DEBUG_LOG("Creating an unstructured task from %p", currentTask);
if (isUnspecified(basePriority)) {
// Case 1: No priority specified
// Base priority = Base priority of parent with a UI -> IN downgrade
// Escalated priority = UN
if (currentTask) {
basePriority = currentTask->_private().BasePriority;
} else {
basePriority = swift_task_getCurrentThreadPriority();
}
basePriority = withUserInteractivePriorityDowngrade(basePriority);
} else {
// Case 2: User specified a priority
// Base priority = user specified priority
// Escalated priority = UN
}
// Task will be created with max priority = max(base priority, UN) = base
// priority
} else {
// Is a structured concurrency child task. Must have a parent.
assert((asyncLet || group) && parent);
SWIFT_TASK_DEBUG_LOG("Creating an structured concurrency task from %p", currentTask);
Is it possible to get the logs about Task under the hood in Xcode somehow ?
ktoso
(Konrad 'ktoso' Malawski 🐟🏴☠️)
2
They’re statically compiled out — if you look at the defining macro you’ll find that it’s all guarded with a define false or similar. So no, sadly those logs are not available in released toolchains.
1 Like