當前位置:編程學習大全網 - 圖片素材 - Linux下怎麽在send的時候,Bad file descriptor

Linux下怎麽在send的時候,Bad file descriptor

因為是從windows 移植到 Linux,而且用到libevent庫,很多東西都要改其中有這麽壹條:evutil_socketpair(AF_INET,SOCK_STREAM,0,fd);在Linux下如果運行 send(fd[0],"",1,0)總是返回-1,perror(),返回Bad filedescriptor網上查了壹下:可能是因為文件描述符錯誤,或者關閉等原因於是去查libevent的utils.h頭文件在Linux下evutil_sockepair()實際調用的是Linux系統函數socketpair()又去Linux man socketpair人家說了,在Linux下socketpair傳入的只能是AF_UNIX,OK,找到了問題把原來的evutil_socketpair(AF_INET,SOCK_STREAM,0,fd)改為evutil_socketpair(AF_UNIX,SOCK_STREAM,0,fd)正常運行所以排錯思路,和查找資料是很重要的能力啊!!!

  • 上一篇:賈乃亮回應李小璐夜宿門,PGone還能翻身嗎?
  • 下一篇:播放vob格式的視頻沒有聲音
  • copyright 2024編程學習大全網