频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

Socket相关程序:从Windows移植到Linux

来源:中国IT实验室 作者:佚名 出处:巧巧读书 2008-05-16 进入讨论组

    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操作系统安装Linux集群技术Windows权限设置专题,或进入讨论组讨论。
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
讨论组问题推荐
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章