English 中文(简体)
为什么有电离层电离层电离层、连接、发送()等等的电离层电离层电离层电离层电离层电离层电离层电离层出价,但不包括近层。
原标题:Why are there WSA pendants for socket(), connect(), send() and so on, but not for closesocket()?

我会试图解释我所说的几个例子:

  • socket() -> WSASocket()
  • connect() -> WSAConnect()
  • send() -> WSASend()
  • sendto() -> WSASendTo()
  • recv() -> WSARecv()
  • recvfrom() -> WSARecvFrom()
  • ...
  • closesocket() -> WSA???()

这不是一件大事,而是给我一个分裂的头痛。

最佳回答
问题回答

为了理解这一点,你必须认识到,Winsock是在1990年代初创建的,而Windows 3.x dinosaur 却在地球上.。

Windows Sockets(“Winsock”) 预报系统反映了目录中的多数内容:如果两者都提供某种功能,两者都是相同的。 因此,socket()是两份APIC/CMP.1中的同样呼吁。 地点差别不大,但比基于BSD袖珍和SOSX等其他系统的网络方案规划差异大。

除了实施这一共同的基础文本,温斯克·安普森还提供了许多用于博发司的备案。 许多人的名字与原来的职能相似,但还有一份<条码>WSA,预设和case。 这些职能完全是原始职能的扩大,而不是替换。 您请大家根据您是否需要扩大功能以及您的方案是否必须进入只提供BSD袖珍软件的系统。 例如,WSASocket(>)的参数与socket(+与其他温斯克延伸有关的另外三个参数相同。 如果您不需要延期,则无需打上socket(<>>/code>,而且除此以外,还给您带来可转移的好处。

除了这些简单的延伸之外,还有Winsock的延伸,没有直接的BSD等同,例如WSAAsyncSelect(。 一般来说,与综合系统方案相比,这些系统与Windows程序书写方式不同。 在这种特殊情况下,WSAyncSelect(>>> 有助于在没有网络I/O阻挡GUI或vice Over的情况下编写单一阅读的“全球倡议”方案。 这一点今天是有用的,但对于Winsock在Windows 3.1天内取得成功来说,绝对至关重要,因为Windows 3.1天没有透镜或其他有用的多处理机制以及国际PC机制。

只剩下几个奇球,例如closesocket(ioctlsocket()。

<>,但仅凭单,不处理文件。 这是改名的部分原因,但真正原因源自1990年代初的历史问题。 在这些日子里,一些Windows编纂者——有more <close()功能名称当时被视为Windows上的“taken”。 更糟糕的是,温斯克是其历史的产物,现在可以改变。

<编码>查询/编码>与<编码>查询/编码>相类似。 一个大的区别是,与<代码>octl(<><>>>>>/code(>)”能够在一个综合系统中做的工作相比,<代码>/代码>在Windows上受到很大的限制。 仅向Windows提供一些与网络有关的设施,而最初的Winsock创建者认为这种设施在BSD的目录中是有用的。 多年来,你可以做的很多工作是关于单项系统,但不包括<代码>查询/编码>,通过其他软件添加到Windows,其中只有一个是WSAIoctl()。

I ve written an article on “ The history of Winsock for the Winsock Programmer s FAQ(我坚持认为),这更加详细地说明了这方面的情况。 其他相关条款是“BSD Sockets Compatibility

这在MSDN文件中写成:

Renamed Functions

在2起案件中,有必要重新命名伯克利斯库斯使用的功能,以避免与微软Windows其他功能发生冲突。

Close and Closesocket

袖珍(Sockets)由伯克利斯群岛的标准档案记录员代理,因此,close功能可用于关闭袖珍和普通档案。 尽管Windows Sockets中没有任何内容妨碍执行,无法利用定期档案处理来查明袖珍,但也不需要这样做。 在Windows,必须使用close功能关闭袖珍片功能是不正确的,其效果不受这一规格的界定。

Ioctl and Ioctlsocket/WSAIoctl

各种 语言运行时间系统将IOCTL用于与Windows Sockets无关的目的。 ioctls function和





相关问题
Undefined reference

I m getting this linker error. I know a way around it, but it s bugging me because another part of the project s linking fine and it s designed almost identically. First, I have namespace LCD. Then I ...

C++ Equivalent of Tidy

Is there an equivalent to tidy for HTML code for C++? I have searched on the internet, but I find nothing but C++ wrappers for tidy, etc... I think the keyword tidy is what has me hung up. I am ...

Template Classes in C++ ... a required skill set?

I m new to C++ and am wondering how much time I should invest in learning how to implement template classes. Are they widely used in industry, or is this something I should move through quickly?

Print possible strings created from a Number

Given a 10 digit Telephone Number, we have to print all possible strings created from that. The mapping of the numbers is the one as exactly on a phone s keypad. i.e. for 1,0-> No Letter for 2->...

typedef ing STL wstring

Why is it when i do the following i get errors when relating to with wchar_t? namespace Foo { typedef std::wstring String; } Now i declare all my strings as Foo::String through out the program, ...

C# Marshal / Pinvoke CBitmap?

I cannot figure out how to marshal a C++ CBitmap to a C# Bitmap or Image class. My import looks like this: [DllImport(@"test.dll", CharSet = CharSet.Unicode)] public static extern IntPtr ...

Window iconification status via Xlib

Is it possible to check with the means of pure X11/Xlib only whether the given window is iconified/minimized, and, if it is, how?

热门标签