freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于linux的實(shí)時(shí)通信軟件設(shè)計(jì)-免費(fèi)閱讀

  

【正文】 printf(\n 新用戶(hù)進(jìn)入聊天室 %d\n,new_fd)。 continue。 exit(1)。 exit(1)。 int thr_id。 exit(1)。 index++。 //maxi 表示當(dāng)前 client 數(shù)組中最大的用戶(hù)的 i 值 static int client[MAXFD]。 if((write(sockfd,mes,sizeof(mes)))==1) { fprintf(stderr,Write Error:%s\n,strerror(errno))。p_thread, NULL, recvfromserver, NULL)。server_addr),sizeof(struct sockaddr))==1) { fprintf(stderr,Connect Error:%s\a\n,strerror(errno))。 exit(1)。s structure */ if(argc!=1) { fprintf(stderr,Usage:%s \a\n,argv[0])。 struct hostent *host。 nbytes=read(sockfd,mes,sizeof(mes))。因?yàn)檎n程設(shè)計(jì)的內(nèi)容比及書(shū)本中的理論知識(shí)而言,更接近于現(xiàn)實(shí)生活 ,而理論到實(shí)踐的轉(zhuǎn)化往往是一個(gè)艱難的過(guò)程,它猶如一只攔路虎, 橫亙 在我們的面前。 開(kāi) 始創(chuàng) 建 套 接 字寫(xiě) 入 服 務(wù) 器 端 口 號(hào)與 I P向 服 務(wù) 器 發(fā) 起 連 接套 接 字 中 內(nèi) 容 流 入對(duì) 象 輸 出 流啟 動(dòng) 客 戶(hù) 端 線 程讀 取 套 接 字 中 的 內(nèi)容檢 查 標(biāo) 志聊 天 已 啟 動(dòng) 發(fā) 送 消 息 啟 動(dòng)在 線 用 戶(hù) 列 表 添 加該 用 戶(hù)服 務(wù) 器 轉(zhuǎn) 發(fā) 的 信 息顯 示 到 各 用 戶(hù) 聊 天窗 口結(jié) 束 圖 5 群聊模塊程序流程圖 8 4. 調(diào)試及測(cè)試 調(diào)試結(jié)果 1,啟動(dòng) SSH Secure Shell 軟件后,將程序進(jìn)行編譯: 圖 6 編譯程序 ,2,編譯成功后,將服務(wù)器打開(kāi): 圖 7 打開(kāi)服務(wù)器 3,打開(kāi)服務(wù)器以后,需 輸入用戶(hù)名稱(chēng),即可進(jìn)入聊天室進(jìn)行聊天: 圖 8 準(zhǔn)備進(jìn)行聊天 9 4,用戶(hù)進(jìn)行聊天: 圖 9 用戶(hù)聊天界面 a 圖 10 用戶(hù)聊天界面 b 調(diào)試結(jié)果分析 這是一個(gè)聊天室程序,可以實(shí)現(xiàn)群聊的功能,即當(dāng)某個(gè)客戶(hù)發(fā)出消息后,服務(wù)器和其他個(gè)客戶(hù)端都能收到此消息。 ( 3) 宜操作性,程序簡(jiǎn)單易懂,容易上手使用??蛻?hù)端接到輸入ctrl+D 后,客戶(hù)端關(guān)閉連接并退出。 Linux 系統(tǒng)支持三種并發(fā)方式:多進(jìn)程、多線程、以及 I/O 多路復(fù)用。而多線程技術(shù)是并行技術(shù)中開(kāi)銷(xiāo)較小,效率較高的一種方式,與其他兩種方式相比,線程占用更少的系統(tǒng)資源,而且效率更高,是并發(fā)技術(shù)中最常用的方式。 本次課題設(shè)計(jì)是在使用 Linux 線程和 Socket 接口的基礎(chǔ)上,編寫(xiě)網(wǎng)絡(luò)聊天程序,從而掌握 Linux 應(yīng)用程序開(kāi)發(fā)的基本方法,練習(xí) Linux 線程及 Socket 編程的方法,從而將所學(xué)知識(shí)融會(huì)貫通。 運(yùn)行環(huán)境要求 本項(xiàng)目開(kāi)發(fā)主要完成軟件開(kāi)發(fā)可在 Linux 和 windows 平臺(tái)下開(kāi)發(fā) 3 3. 系統(tǒng)設(shè)計(jì) 系統(tǒng)總體流程圖 啟 動(dòng) 客 戶(hù) 端聊 天啟 動(dòng) 服 務(wù) 器等 待 數(shù) 據(jù) 請(qǐng) 求處 理 用 戶(hù) 數(shù) 據(jù)顯 示 對(duì) 所 有 人 信 息顯 示 私 聊 信 息登 發(fā) 送 信 息入 服 務(wù) 器顯 示 在 線用 戶(hù)數(shù) 據(jù) 傳 輸數(shù) 據(jù) 傳 輸數(shù) 據(jù) 傳 輸 圖 1 系統(tǒng)設(shè)計(jì)流 程圖 系統(tǒng)模塊設(shè)計(jì) 轉(zhuǎn)發(fā)信息模塊 服務(wù)器定義 readMessage 函數(shù)用于存儲(chǔ)要求請(qǐng)求連接的用戶(hù)名,客戶(hù)發(fā)送的信息,該消息服務(wù)器、客戶(hù)端共享,客戶(hù)端讀取該信息,從而實(shí)現(xiàn)信息轉(zhuǎn)發(fā)。且能夠顯示客戶(hù)端的用戶(hù)名。 通過(guò)這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來(lái),從理論中得出結(jié)論,才能真正為社會(huì)服務(wù),從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。 if(nbytes0) { mes[nbytes]=39。 int portnumber,nbytes。 exit(1)。 } /* 客戶(hù)程序填充服務(wù)端的資料 */ bzero(amp。 exit(1)。 while(1) { memset(buffer,0,sizeof(buffer))。 exit(1)。 void recvandsend(void) //監(jiān)聽(tīng)轉(zhuǎn)發(fā)線程入口函數(shù) { int index=0。 nbytes=read(client[index++],buffer,sizeof(buffer))。 } } } if(index=maxi) index=0。 /* thread ID for the newly created thread */ pthread_t p_thread。 } /* 服務(wù)器端填充 sockaddr 結(jié)構(gòu) */ bzero(amp。 } printf(服務(wù)器監(jiān)聽(tīng)端口 %d...\n,PORT)。
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1