Je suis en train de définir une source d'entrée personnalisée pour CFRunLoop
, j'ai lu le document du Guide de programmation Threading écrit par Apple et ce problème est le seul que je ne peux pas comprendre. Donc, je veux savoir quel est le but de la fonction CFRunLoopScheduleCallBack
ou comment implémenter cette fonction?Quel est le but de la fonction CFRunLoopScheduleCallBack dans CFRunLoopSource?
0
A
Répondre
0
Ce rappel est appelé lorsque votre source est ajoutée à la boucle d'exécution. Vous pouvez le laisser vide si vous n'avez pas besoin de code personnalisé pour exécuter cet événement.
Vous implémentez comme ceci:
void MyCallBack (void *info, CFRunLoopRef rl, CFStringRef mode) { // code }
Je sais que cette fonction appelée lorsque la source d'entrée personnalisée ajoutée à la boucle d'exécution. Si je ne veux pas laisser cette fonction vide, que dois-je faire? ou quel est le code correct que j'ai besoin d'écrire? Un autre mot, si cette fonction n'est pas vide, alors quel est l'effet de ces codes dans cette fonction? – Sherlock
Cela dépend de vous, vraiment - ce rappel est juste une occasion pour vous d'exécuter du code. Si vous ne savez pas quel code exécuter, n'en lancez pas. Vous pouvez trouver un exemple de ce que vous pouvez faire ici: https://github.com/hrchen/ExamplesForBlog/blob/19f516add0b22e4e49846aafede93de665b79686/NSThreadExample/NSThreadExample/PTInputSource.m#L57 –