Je voudrais reformuler ma question précédente How to create Singleton with async method?comment créer un singleton qui tourne toujours dans un fil séparé?
Imaginez application de messagerie (comme icq) - quelque chose qui devrait être toujours connecté au serveur et peut envoyer des messages.
Je dois implémenter la classe Connection
. Il devrait être singleton, car il contient "socket" à l'intérieur et ce socket devrait persister pendant toute la durée de vie de l'application.
Ensuite, je veux mettre en œuvre la méthode async Connection.postMessage
Parce que postMessage
peut prendre ammount beaucoup de temps:
postMessage
devrait être asyncpostMessage
doit la file d'attente des messages si neccesary
Notez que mon application publie des dizaines de messages par seconde, donc ce n'est pas une application ropier pour créer un nouveau thread pour chaque appel postMessage
.
Je n'ai pas besoin de créer exactement un thread supplémentaire pour les messages, mais je ne sais pas où et comment.
màj: bon exemple http://msdn.microsoft.com/en-us/library/yy12yx1f(v=vs.80).aspx
Votre question, tout comme la précédente, n'a rien à voir avec les singletons. Vous voulez savoir comment créer une file d'attente de messages. Il arrive juste que vous en fassiez un singleton. –