最近在學python的網絡編程,學了socket通信,並利用socket實現了一個具有用戶驗證功能,可以上傳下載文件、可以實現命令行功能,創建和刪除文件夾,可以實現的斷點續傳等功能的FTP服務器。但在這當中,發現一些概念區分起來很難,比如並發和並行,同步和異步,阻塞和非阻塞,但是這些概念卻很 ...
. 進程池與線程池 池子使用來限制並發的任務數目,限制我們的計算機在一個自己可承受的范圍內去並發地執行任務 池子內什么時候裝進程:並發的任務屬於計算密集型 池子內什么時候裝線程:並發的任務屬於IO密集型 進程池: 線程池: . 基於多線程實現並發的套接字通信 使用線程池 服務端: View Code 客戶端: View Code . 同步異步阻塞非阻塞 阻塞與非阻塞指的是程序的兩種運行狀態: 阻 ...
2019-07-25 21:30 0 1535 推薦指數:
最近在學python的網絡編程,學了socket通信,並利用socket實現了一個具有用戶驗證功能,可以上傳下載文件、可以實現命令行功能,創建和刪除文件夾,可以實現的斷點續傳等功能的FTP服務器。但在這當中,發現一些概念區分起來很難,比如並發和並行,同步和異步,阻塞和非阻塞,但是這些概念卻很 ...
基本概念 1 進程和線程 進程(Process): 是Windows系統中的一個基本概念,它包含着一個運行程序所需要的資源。一個正在運行的應用程序在操作系統中被視為一個進程,進程可以包括一個或多個線程。線程是操作系統分配處理器時間的基本單元,在進程中可以有多個線程同時執行代碼。進程之間是相對 ...
一. 並發和並行 操作系統掃盲: 1. 對於單核cpu而言(不管單核單線程也好,單核多線程也罷),同一時間只能干一件事!!為了看起像可以“同時干多件事”,windows操作系統把cpu的時間划分為長短基本相同的時間區間,即“時間片”,通過操作系統的管理,把這些時間片依次輪流分配給 ...
一、阻塞隊列 1.介紹阻塞隊列會對當前線程產生阻塞,比如一個線程從一個空的阻塞隊列中取元素,此時線程會被阻塞直到阻塞隊列中有了元素。當隊列中有元素后,被阻塞的線程會自動被喚醒(不需要我們編寫代碼去喚醒)。 2.實現ArrayBlockingQueue:基於數組實現的一個阻塞隊列,在創建 ...
...
一.概念理解 1.同步異步: 同步和異步關注的是消息通信機制 (synchronous communication/ asynchronous communication)所謂同步,就是在發出一個*調用*時,在沒有得到結果之前,該*調用*就不返回。但是一旦調用返回,就得到返回值了。換句話 ...
1、進程和線程的概念 進程:運行中的應用程序稱為進程,擁有系統資源(cpu、內存) 線程:進程中的一段代碼,一個進程中可以有多段代碼。本身不擁有資源(共享所在進程的資源); 在java中,程序入口被自動創建為主線程,在主線程中可以創建多個子線程。 多進程: 在操作系統中能同時運行多個任務 ...
最近在寫爬蟲 ,對於這幾個概念比較模糊,所以特意學習了一下。 進程(process):進程是具有一定獨立功能的程序關於某個數據集合上的一次運行活動,進程是系統進行資源分配和調度的一個獨立單位。 線程(thread):線程是進程的一個實體,是CPU調度和分派的基本單位,它是比進程更小的能獨立運行 ...