작성
·
34
0
코드파일의 5번 SerialSyncProject의 WriteSyncronously()를 실행할 경우 SerialSyncProject(9296,0x104550200) malloc: nano zone abandoned due to inability to reserve vm space.
현재 이름(write-safe): 재석 유
==================
WARNING: ThreadSanitizer: data race (pid=9296)
Write of size 8 at 0x000108f5f7d0 by thread T8:
#0 SerialSyncProject.Person.changeName(firstName: Swift.String, lastName: Swift.String) -> () <null> (SerialSyncProject.debug.dylib:arm64+0xdc98)
#1 closure #1 () -> () in SerialSyncProject.WriteSyncPerson.changeName(firstName: Swift.String, lastName: Swift.String) -> () <null> (SerialSyncProject.debug.dylib:arm64+0x105b4)
....기타 경고들....
==================
현재 이름(write-safe): 구라 김
현재 이름(write-safe): 나래 박
현재 이름(write-safe): 동엽 신
현재 이름(write-safe): 세형 양
마지막 이름은?(write-safe): 세형 양
이런식으로 경고메세지가 뜨는데 정상인걸까요? - 데이터 레이서 때문에 생기는 현상이어서 그냥 넘겨도 되는건지 궁금합니다!
답변 1
0
네네 미래 님!
그런 에러 메세지가 뜨는게 정상입니다 !
잘못 구현되어 있기 때문에(?) (즉, 쓰레드 세이프하지 않게 구현되어 있기 때문에)
그 것을 아래의 changeNameSafelyPrintRightly() 코드로 고치면 되는 내용이기 때문에, 에러 메세지가 뜰 수 있어요.
궁금하신게 있으시면 또 언제든지 질문 주세요 !
고맙습니다 :)