国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

Socket相關程序:從Windows移植到Linux

瀏覽:3日期:2024-01-29 14:37:51

socket相關程序從windows移植到linux下需要注意的

1)頭文件

windows下winsock.h/winsock2.h

linux下sys/socket.h

錯誤處理:errno.h

2)初始化

windows下需要用WSAStartup

linux下不需要

3)關閉socket

windows下closesocket(...)

linux下close(...)

4)類型

windows下SOCKET

linux下int

如我用到的一些宏:

#ifdef WIN32

typedef int socklen_t;

typedef int ssize_t;

#endif

#ifdef __LINUX__

typedef int SOCKET;

typedef unsigned char BYTE;

typedef unsigned long DWORD;

#define FALSE 0

#define SOCKET_ERROR (-1)

#endif

5)獲取錯誤碼

windows下getlasterror()/WSAGetLastError()

linux下errno變量

6)設置非阻塞

windows下ioctlsocket()

linux下fcntl()

7)send函數最后一個參數

windows下一般設置為0

linux下最好設置為MSG_NOSIGNAL,如果不設置,在發送出錯后有可 能會導致程序退出。

8)毫秒級時間獲取

windows下GetTickCount()

linux下gettimeofday()

多線程

多線程: (win)process.h --〉(linux)pthread.h

_beginthread --> pthread_create

_endthread --> pthread_exit

標簽: Windows系統
相關文章:
主站蜘蛛池模板: 正阳县| 石门县| 闻喜县| 屯昌县| 洛川县| 青岛市| 永平县| 交城县| 肃北| 横山县| 宝兴县| 荣成市| 三都| 乐平市| 吉木萨尔县| 辽阳市| 兴仁县| 泽州县| 霍州市| 嵊州市| 鄂伦春自治旗| 中超| 沂源县| 滨海县| 丰台区| 皮山县| 临颍县| 十堰市| 扶余县| 大方县| 宝清县| 金平| 天台县| 辽宁省| 克拉玛依市| 富民县| 岑巩县| 德保县| 油尖旺区| 泰安市| 惠来县|