Windows中socket和HANDLE有什么区别?
发布时间:2020-12-13 22:41:32 所属栏目:Windows 来源:网络整理
导读:我正在尝试在 Windows中运行 Linux服务器. 在Linux中,套接字和文件描述符的处理方式相同. 某些系统api可用于套接字和文件描述符. 但是,我通过WIN API处理Winsock和HANDLE(文件描述符)的套接字. 所以我需要知道一个整数是一个套接字或一个HANDLE. Now here is
我正在尝试在
Windows中运行
Linux服务器.
在Linux中,套接字和文件描述符的处理方式相同. 但是,我通过WIN API处理Winsock和HANDLE(文件描述符)的套接字. 所以我需要知道一个整数是一个套接字或一个HANDLE.
如果它们总是不同,我可以编写自己的socket()和open()来包装系统的一个. 如果它们是相同的,我不知道如何处理它.
套接字句柄是Win32(NT内核)句柄,因此您可以在它们上使用ReadFile或WriteFile.还有与Winsock维护的句柄相关联的用户模式状态,这就是为什么你需要使用closesocket()而不是CloseHandle().
open()返回与Win32句柄不同的CRT文件描述符.您可以使用_open_osfhandle()创建CRT文件描述符.但是不建议使用套接字,因为您无法以干净的方式关闭文件.您可以使用close()来泄漏Winsock用户模式状态,也可以使用closesocket()来泄漏CRT描述符. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- Windows下Mysql5.7忘记root密码的解决方法
- win10 sql server2012 连接navicat 无法使用
- 检测到的Windows MATLAB上的非最大抑制
- winapi – Win32:计算多核/多处理器系统中的线程CPU利用率
- windows-server-2012 – Windows Server 2012是否支持Ready
- .net可移植类库包含Microsoft.VisualBasic作为依赖项
- 在Windows Server 2008 R2上安装Sharepoint 2007
- Phpstudy被暴存在隐藏后门-检查方法
- 使用therubyracer在Windows机器上安装ruby gem less-rails
- Windows Azure SDK for C
推荐文章
站长推荐
- windows-server-2008 – “ipv6等效”192.168.x.
- OmniOS / ZFS / Windows 7:对于CIFS / SMB上的所
- winapi – 来自Win32应用程序的x64图像上的OpenP
- ms-office – Microsoft Office 2010功能区自定义
- IE11 For Win7、win2008中文版官方下载地址
- winforms – Windows窗体测试自动化
- windows – 我在使用远程桌面时是否在看控制台?
- Windows – PHP在IIS上占用了大量内存
- windows-phone-8.1 – 提交给Windows Phone Stor
- 试图在Windows上运行hadoop
热点阅读