Unterschied in der Planung von NSTimer im Haupt- und Hintergrundthread?

Wenn ich anrufescheduledTimerWithTimeInterval:target:selector:userInfo:repeats: Auf dem Haupt-Thread und dem eingestellten Zeitintervall von 5 Sekunden wird der Code unterhalb des Timers ausgeführt und nach 5 Sekunden der Timer-Selektor aufgerufen.

Aber wenn ich das selbe in irgendeinem Hintergrund-Thread versuche, ist der Code untenscheduledTimerWithTimeInterval:target:selector:userInfo:repeats: wird nicht ausgeführt, es wird darauf gewartet, dass der Timer ausgelöst wird und wird dann ausgeführt. Um den Timer im Hintergrund-Thread auszuführen, habe ich natürlich zuerst eine Instanz vonNSRunLoop und lass es laufen.

Gibt es eine Möglichkeit, den Timer im Hintergrund-Thread zu setzen und ihn nicht zu blockieren, sodass Code, nachdem er ausgeführt wurde, sofort ausgeführt wird?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage