Сбой iPhone XS в pthread_tsd_cleanup при порождении потока C ++ - PullRequest
0 голосов
/ 26 октября 2018

Мы получаем сбой при порождении потока с помощью C ++ с использованием Unity на последних устройствах iPhone XS.Сбой происходит только на iPhone XS и iPhone XS Max, а не на старых iPhone.

Ниже приведена трассировка стека после завершения потока

0 libsystem_c.dylib 0x000000022d4c7094 __abort + 188
1 libsystem_c.dylib 0x000000022d4c6fd8 __abort + 0
2 libsystem_malloc.dylib 0x000000022d5c3c7c _malloc_put + 0
3 libsystem_malloc.dylib 0x000000022d5c3e48 malloc_report + 68
4 libsystem_malloc.dylib 0x000000022d5b5574 free + 412
5 libsystem_pthread.dylib 0x000000022d5ed40c _pthread_tsd_cleanup + 512
6 libsystem_pthread.dylib 0x000000022d5e6cc8 _pthread_exit + 84
7 libsystem_pthread.dylib 0x000000022d5e5a10 _pthread_body + 144
8 libsystem_pthread.dylib 0x000000022d5e5960 _pthread_start + 52
9 libsystem_pthread.dylib 0x000000022d5eddf4 thread_start + 4

Кто-нибудь знает, были ли какие-либо измененияв стандартные библиотеки на iOS 12 или специально для iPhone XS?

Мы полагаем, что это сбой, связанный с Unity, так как он не происходит, когда: 1) вы порождаете поток с использованием стандартных pthreads 2) вы порождаете поток с помощью C ++ в автономном приложении без Unity

Сбой происходит только при соединении Unity и порождении потока C ++

Вот как мы запускаем этот тест:

void *reproduce_crash()

{

pthread_setname_np("CrashingThread");

}


std::thread(reproduce_crash).detach()

Я связываюсь с нашим открытым потоком плат Unity, а также с двумяпримеры приложений (1 с Unity и 1 без этого подтверждают проблему, что опять же происходит только на iPhone XS / XS Max)

https://forum.unity.com/threads/iphone-xs-crash-when-spawning-c-thread.574021/

https://ufile.io/e8m26

Ниже приведен скриншот запуска приложения с Address Sanitizer на:

enter image description here

ОБНОВЛЕНИЕ: Исправлено Unity в последней версии Unity

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...