2010-03-16 5 views
0

J'utilise C et Grand Central Dispatch pour paralléliser certains calculs lourds. Comment puis-je obtenir le nombre de threads utilisés par GCD? Est-il également possible de savoir sur quel thread un code est en cours d'exécution? Fondamentalement, je voudrais utiliser sprng (numéros aléatoires parallèles) avec plusieurs flux et pour cela j'ai besoin de savoir quel identifiant de flux à utiliser (et donc quel fil est utilisé).Nombre de threads et nombres de threads dans Grand Central Dispatch

Répondre

0
  • que chaque fil a un autre runloop vous pouvez obtenir le runloop courant par CFRunLoopGetCurrent()
  • ou si vous utilisez AppKit [NSThread currentThread];
  • sur NSThread vous pouvez ajouter tout autre objet à partager entre les appels sur le même fil en utilisant - (NSMutableDictionary *) threadDictionary
  • ou vous pouvez travailler sur l'homme API pthread PTHREAD
+0

Est-ce que ça marche? Ensuite, vous pourriez ajouter quelques détails sur la façon dont vous l'avez fait et finalement marquer la question comme une réponse. –

Questions connexes