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

您的位置:首頁技術(shù)文章
文章詳情頁

Socket相關(guān)程序:從Windows移植到Linux

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

socket相關(guān)程序從windows移植到linux下需要注意的

1)頭文件

windows下winsock.h/winsock2.h

linux下sys/socket.h

錯誤處理:errno.h

2)初始化

windows下需要用WSAStartup

linux下不需要

3)關(guān)閉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)設(shè)置非阻塞

windows下ioctlsocket()

linux下fcntl()

7)send函數(shù)最后一個參數(shù)

windows下一般設(shè)置為0

linux下最好設(shè)置為MSG_NOSIGNAL,如果不設(shè)置,在發(fā)送出錯后有可 能會導(dǎo)致程序退出。

8)毫秒級時間獲取

windows下GetTickCount()

linux下gettimeofday()

多線程

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

_beginthread --> pthread_create

_endthread --> pthread_exit

標(biāo)簽: Windows系統(tǒng)
相關(guān)文章:
主站蜘蛛池模板: 无棣县| 霍林郭勒市| 冕宁县| 六枝特区| 临漳县| 内江市| 甘谷县| 独山县| 琼结县| 麻城市| 浪卡子县| 德州市| 寻甸| 那坡县| 陵川县| 贡嘎县| 永康市| 平塘县| 吴堡县| 姚安县| 太康县| 阜新| 寿宁县| 祁连县| 明星| 长春市| 长兴县| 开化县| 夏邑县| 江北区| 利川市| 辉县市| 遵义县| 兴义市| 青浦区| 迁安市| 龙陵县| 阜康市| 绿春县| 怀来县| 菏泽市|