TCP利用多程序和多執行緒實現伺服器端的併發處理

2021-09-12 11:58:20 字數 1653 閱讀 3699

熟練掌握伺服器端併發處理的方法。

在tcp檔案傳輸**的基礎上,利用多程序和多執行緒實現伺服器端的併發處理。

#include #include #include #include #include #include #include #include //for malloc

#include#include#include#define maxline 4096

#define buffer_size 1024

void recvfilename(int temp)

//從路徑中提取出檔名

else

else

break;

}strcpy(filename,filepath+(strlen(filepath)-k)+1);

}printf("filename :%s\n",filename);

//以寫的方式開啟檔案

fp = fopen(filename,"w");

if(fp!=null)

//把buffter中的檔案內容寫到fp指標指的檔案中

writelength = fwrite(buffer,sizeof(char),filetrans,fp);

if(writelength 在windows下寫了個aa.txt文字內容是hello

執行windows下客戶端** 輸入相對路徑下的aa.txt文字檔案 發現傳送成功

在linux下伺服器 

//從路徑中提取出檔名

else

else

break;

}strcpy(filename,filepath+(strlen(filepath)-k)+1);

}printf("filename :%s\n",filename);

//以寫的方式開啟檔案

fp = fopen(filename,"w");

if(fp!=null)

//把buffter中的檔案內容寫到fp指標指的檔案中

writelength = fwrite(buffer,sizeof(char),filetrans,fp);

if(writelength 多程序實現伺服器簡單的呼叫了fork函式,在每次連線到達時建立乙個新的程序去處理,主程序不處理傳輸過程,只是接受連線。如果併發伺服器用乙個程序多個執行緒來實現的話,優點相較單執行緒多程序來說上下文開銷更小,但缺點是乙個執行緒的動作可能會對其他執行緒產生影響

Python實現多執行緒 多程序的TCP伺服器

多執行緒的tcp伺服器,供大家參考,具體內容如下 背景 同學公司的感測器裝置需要將收集的資料發到伺服器上,前期想寫乙個簡單的伺服器來測試下使用效果,裝置收集的資料非常的重要,所以考慮使用tcp協議來實現。因為只是測試使用,所以採用多執行緒的方式,畢竟節省資源嘛 使用協程時會導致i o阻塞 開門見山,...

多程序和多執行緒

嵌入式linux中文站,關於多程序和多執行緒,教科書上最經典的一句話是 程序是資源分配的最小單位,執行緒是cpu排程的最小單位 這句話應付考試基本上夠了,但如果在工作中遇到類似的選擇問題,那就沒有那麼簡單了,選的不好,會讓你深受其害。經常在網路上看到有xdjm問 多程序好還是多執行緒好?linux下...

多執行緒和多程序

首先說什麼是程序,載入記憶體中執行的程式,它就是乙個程序,而這個程式中執行的某個子任務就是乙個執行緒,程式包含了執行緒。程序對於執行緒是唯一的,而乙個程序可以有多個執行緒。程式執行的時候每隔一定時間在多執行緒之間執行,比如第乙個執行緒執行到0.01秒,馬上暫停跳到下乙個執行緒開始執行,又執行到0.0...