术语 | CSocketFile::CSocketFile | ||||
释义 | CSocketFile::CSocketFile CSocketFile( CSocket* pSocket, BOOL bArchiveCompatible = TRUE ); 参数:
说明: 此成员函数用来构造一个CSocketFile对象。当此对象超出范围或被删除时,它的析构函数将使它自己从插槽对象上分离。 注意:一个CSocketFile对象也可以在没有CArchive对象的情况下作为一个(受限制)的文件来使用。缺省的,CSocketFile构造函数的bArchiveCompatible参数是TRUE。这表明此文件对象是与一个档案一起使用的。要在没有档案的情况下使用这个文件对象,给bArchiveCompatible参数传递FALSE。 在“档案兼容”模式下,一个CSocketFile对象可以提供更好的表现,并减少出现“死锁”的危险。当两个发送和接收插槽相互等待时,或是同时等待一个公用的资源时,就会发生死锁。如果与CSocketFile对象一起工作的CArchive对象按它与CFile对象一起工作的方式来工作时,这种情况就会发生。在与CFile一起工作时,档案可以假定如果它接收到的字节少于它所请求的,则文件已经到达文件结尾了。 但是,在使用CSocketFile工作时,数据是基于消息的;缓冲区可以保存多条消息,因此收到比所请求的要少的字节数并不表示到达了文件结尾。在这种情况下,应用程序不会象使用CFile时那样阻塞,它可以继续从缓冲区中读取数据,直到缓冲区为空。在这种情况下,CArchive::IsBufferEmpty用于监视档案的缓冲区的状态是很有用的。 请参阅:CFile::CFile, CFile::Read |
||||
随便看 |
|
MFC类库中文详解手册包含4274条MFC类库参考词条,基本涵盖了Microsoft基本类库中的类、全局函数、全局变量和宏的内容,是计算机编程的有利工具。