Bonjour à toutes et tous,
Je dois écrire un serveur WEB chargé de récupérer des données postées par une application distante.
Totalement débutant dans le domaine, j'ai besoin de vos conseils éclairés.
Puisse qu'il s'agit d'une application console, je veux pouvoir envoyer des messages d'info ou d'erreur sur respectivement StdOut et StdErr.
Pour ce faire, je dispose de ma petite librairie qui gère tout cela très bien avec des streams... en mode mono-thread.
Si j'ai bien compris le fonctionnement de WebBroker, ce dernier peut créer plusieurs instances de de mon WebModule si plusieurs requêtes se présentent +- simultanément.
(Si je suis déjà dans l'erreur, merci de me le faire savoir :-) )
Partant de ce postulat, je me dis qu'il n'est pas bon d'écrire sauvagement sur les sorties et qu'il serait probablement plus malin d'utiliser une synchronisation quelconque afin d'éviter les télescopages.
Je me suis donc penché sur TCriticalSection.
Comme je comprends la chose, il faut en créer une instance (et une seule) et tout code désirant écrire dans mon stdout devrait préalablement l'acquérir. Une fois le message écrire, elle devrait être "rendue".
Si ce fonctionnement est correct, j'en arrive à mon problème : Comment partager cette instance ?
Est-ce que la crée en tant que variable de classe du WebModule ? Est-ce que je crée une classe de type Singleton pour gérer cela ? Est-ce que j'ai tout faux ?
Comment gérez-vous ce type de problématique ?
Au plaisir de vous lire et d'en apprendre plus sur le sujet,
Coyotte
Partager