LLVM TSAN / ASAN
Для многопоточного и небезопасного низкоуровневого серверного кода, возможность использования LLVM’s ThreadSanitizer и AddressSanitizer может помочь в устранении проблем с некорректным использованием потоков и некорректным использованием/доступом к памяти.
Существует статья блога, описывающая использование TSAN.
Вкратце, используйте параметры командной строки swiftc -sanitize=address и -sanitize=thread для каждого соответствующего инструмента.
Также для проектов Swift Package Manager вы можете использовать --sanitize в командной строке, например:
swift build --sanitize=address
или
swift build --sanitize=thread
и его можно использовать для тестов тоже:
swift test --sanitize=address
или
swift test --sanitize=thread
The Swift Programming Language, Copyright © 2014-2025 Apple Inc.
Swift and the Swift logo are trademarks of Apple Inc.
Documentation for Swift 6.0.3
https://www.swift.org/documentation/server/guides/llvm-sanitizers.html