Der Code ich bin auf der Suche ist hier:Ignorieren SIGPIPE für einen einzelnen popen'd FILE *
Sparkle ist wie ein Plugin. Es kann in einem Multithread-Programm instanziiert werden. Daher möchte ich kein Signal (SIGPIPE, SIG_IGN) aufrufen (dh ignorieren alle SIGPIPE) als wer weiß, was andere Threads tun/erwarten.
Wie kann ich das SIGPIPE-Signal für diesen einen FILE-Zeiger deaktivieren, der über popen geöffnet wurde?
Ich verstehe den ersten Satz nicht, aber wird Socketpair nachschlagen. Vielen Dank. – mxcl
Sie können also kein Sigpipe für ein Sockelpaar bekommen? Ich kann diese Information nicht finden. – mxcl
Mit einem Socket-Paar können Sie den Aufruf send() verwenden, und send() kann MSD_NOSIGNAL (auf BSDs atleast) MSG_NOSIGNAL als Flag-Parameter verwenden, wodurch SIGPIPE nicht geliefert wird. – nos