Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 将信号转换为NSException仅在第一次工作时有效_Objective C_Cocoa_Macos_Signals_Segmentation Fault - Fatal编程技术网

Objective c 将信号转换为NSException仅在第一次工作时有效

Objective c 将信号转换为NSException仅在第一次工作时有效,objective-c,cocoa,macos,signals,segmentation-fault,Objective C,Cocoa,Macos,Signals,Segmentation Fault,当BSD信号被转换为抛出的异常时,它似乎只在第一次工作,而不在随后的时间工作 在调用NSApplicationMain之前,我尝试通过main方法中的以下调用将信号转换为异常: [[NSExceptionHandler defaultExceptionHandler] setExceptionHandlingMask:NSHandleUncaughtSystemExceptionMask]; 这在第一次出现信号时起作用。但第二次发生时,线程只是挂起,但仍允许其他线程运行。我每次都能做到吗 顺便

当BSD信号被转换为抛出的异常时,它似乎只在第一次工作,而不在随后的时间工作

在调用
NSApplicationMain
之前,我尝试通过main方法中的以下调用将信号转换为异常:

[[NSExceptionHandler defaultExceptionHandler] setExceptionHandlingMask:NSHandleUncaughtSystemExceptionMask];
这在第一次出现
信号时起作用。但第二次发生时,线程只是挂起,但仍允许其他线程运行。我每次都能做到吗

顺便说一句,我通过一个按钮来测试这一点,该按钮通过写入地址0触发
SIGSEGV
冲突:

char* p = NULL;
*p = 'x';
我想要的是每次抛出一个异常——就像Java的
NullPointerException
。但目前它只在第一次执行时起作用,随后线程挂起