Ниже приведено полное сообщение об ошибке, код является демонстрацией от моего учителя, поэтому я полагаю, что он правильный.
2020-02-15 21: 28: 37.934 java [14142: 330555] * Ошибка подтверждения в + [NSUndoManager _endTopLevelGroupings], /BuildRoot/Library/Caches/com.apple.xbs/Sources/Foundation/Foundation-1454.90/Foundation/Misc.subproj/NSUndoManager.m:361 2020-02-15 21: 28: 37.935 java [14142: 330555] * Завершение работы приложения из-за необработанного исключения «NSInternalInconsistencyException», причина: «+ [NSUndoManager (NSInternal) _endTopLevelGroupings] безопасно вызывать только в главном потоке.» *** Стек вызовов первого броска: (0 CoreFoundation 0x00007fff37ff32db __exceptionPreprocess + 171 1 libobj c .A.dylib 0x00007fff5f2a3c76 objc_exception_throw + 48 2 CoreFoundation 0x00007fff37ff9072 + дескриптор объекта 0H0: 040: факс-аргумент: 0: 0: аргументы в формате 0: 0: 0: факс-аргумент : объект: файл: номер_строки: описание:] + 193 4 Foundation 0x00007fff3a0b0f44 + [NSUndoManager (NSPrivate) _endTopLevelGroupings] + 469 5 AppKit 0x00007fff354fd96e - [NSApplication run] + 997 6 libgl0x0000x0000xfx0000000000000000xx00000000xx00000000xfx000000xfx000000xfx00000000xfx000000xfx.dll libglfw.dylib + 42006 8 ??? 0x00000001128fb950 0x0 + 4606376272 9 ??? 0x00000001128f5790 0x0 + 4606351248) libc ++ abi.dylib: завершается с неосторожным исключением типа NSException