CSocketFile::CSocketFile

CSocketFile (CSocket *pSocket,BOOLbArchiveCompatibleTRUE=);

Paramètres

pSocket

L'attache à l'objet CSocketFile.

bArchiveCompatible

Spécifie si l'objet de fichier est à utiliser avec un objet CArchive . Passez FALSE uniquement si vous souhaitez utiliser l'objet CSocketFile de façon autonome, comme vous le feriez pour un objet CFile autonome, avec certaines restrictions. Cet indicateur change comment l'objet CArchive attaché à l'objet CSocketFile gère sa mémoire tampon de lecture.

Remarques

Construit un objet CSocketFile . Destructeur de l'objet le dissocie de l'objet socket lorsque l'objet passe hors de portée ou est supprimé.

Note Un CSocketFile peut également être utilisé comme un fichier (limité) sans un objet CArchive . Par défaut, le paramètre bArchiveCompatible de la CSocketFile du constructeur est TRUE. Ce paramètre spécifie que l'objet de fichier est à utiliser avec une archive. Pour utiliser l'objet fichier sans une archive, passez FALSE dans le paramètre bArchiveCompatible.

En mode « compatible archive », un objet CSocketFile offre de meilleures performances et réduit le risque d'une « impasse ». Un blocage se produit lorsque les deux sockets l'envoi et de réception sont en attente sur l'autre, ou d'une ressource commune. Cette situation peut se produire si l'objet CArchive a travaillé avec le CSocketFile la façon dont il le fait avec un objet CFile . Avec CFile, l'archive peut supposer que, si elle reçoit moins d'octets qu'il a demandé, la fin du fichier a été atteinte.

Avec CSocketFile, cependant, données sont message fondée ; la mémoire tampon peut contenir plusieurs messages, afin de recevoir moins que le nombre d'octets demandé n'implique pas la fin du fichier. L'application ne bloque pas dans ce cas, comme il peut avec CFile, et qu'il peut continuer à lire les messages de la mémoire tampon jusqu'à ce que le tampon est vide. La fonction CArchive::IsBufferEmpty est utile pour la surveillance de l'État du tampon de l'archive dans un tel cas.

Pour plus d'informations sur l'utilisation de CSocketFile, voir les articles Windows Sockets: à l'aide de Sockets avec les Archives et Windows Sockets : exemple des Archives à l'aide de Sockets dans le Guide du programmeur Visual C++.

Aperçu CSocketFile |  ; Membres de la classe | Graphique de la hiérarchie

Voir aussi  ;CFile::CFile, CFile::Read

Index