協(xié)程介紹 在單線程執(zhí)行的情況下,如果要實(shí)現(xiàn)并發(fā)的效果,只需要CPU在不同的時(shí)間運(yùn)行不同的線程即可。 yield 可以保存狀態(tài),yield的狀態(tài)保存于操作系統(tǒng)的保存線程狀態(tài)很像...
池的概念 為了實(shí)現(xiàn)并發(fā),提高程序的運(yùn)行效率,我們使用了多進(jìn)程和多線程。但是在開(kāi)啟多線程和多進(jìn)程的時(shí)候,由于機(jī)器本身的性能瓶頸不能無(wú)限開(kāi)啟,所以我引入池的概念,控制主機(jī)能夠開(kāi)啟...
隊(duì)列(進(jìn)程通信ipc) 隊(duì)列主要用于解決進(jìn)程間通信的問(wèn)題,隊(duì)列底層就是通過(guò)管道和鎖的方式實(shí)現(xiàn)的。 代碼示例: 主要方法 q.put(): 用以插入數(shù)據(jù)到隊(duì)列中,put方法還有...
Python GIL(Global Interpreter Lock) 解釋器鎖 GIL本質(zhì)就是一把互斥鎖,將并發(fā)變成串行,以此來(lái)控制同一時(shí)間共享數(shù)據(jù)只能被一個(gè)任務(wù)所修改,進(jìn)...
線程 線程的特點(diǎn): 多個(gè)線程共享同一個(gè)進(jìn)程的內(nèi)存空間 開(kāi)啟一個(gè)線程開(kāi)銷比進(jìn)程小很多 所有進(jìn)程運(yùn)行的最小單位就是線程 進(jìn)程和線程的區(qū)別 線程開(kāi)啟速度快 同一個(gè)進(jìn)程下的所有線程有...
————————更新于2019年3月17日————說(shuō)下我最近的狀況吧,我也不知道為什么這錢(qián)文章會(huì)有6000+的閱讀量,感謝大家的支持于鼓勵(lì)。 從18年9月到19年3月,從確定...
當(dāng)我們?cè)L問(wèn)一個(gè)URL,任意的URL可以是域名,IP等等,只需要在訪問(wèn)的web 服務(wù)器上的index.html中寫(xiě)入如下代碼就可以實(shí)現(xiàn)任意的跳轉(zhuǎn),還可以指定端口:
什么是進(jìn)程 進(jìn)程:一個(gè)程序的執(zhí)行過(guò)程或者一個(gè)任務(wù)。 并發(fā): 是偽并行,看起來(lái)是同時(shí)運(yùn)行,其實(shí)通過(guò)單個(gè)cpu+多道技術(shù)就可以實(shí)現(xiàn)并發(fā)。 并行: 同時(shí)運(yùn)行,只有具備多個(gè)cpu才能...
UDP通信原理 由于UDP協(xié)議不是基于鏈接的協(xié)議,所以在發(fā)送數(shù)據(jù)的時(shí)候不需要建立鏈接。在數(shù)據(jù)的每一次發(fā)送和接收的時(shí)候,都需要發(fā)送UDP報(bào)頭,指定接收端的IP和端口信息。效率與...
粘包發(fā)生的場(chǎng)景 當(dāng)應(yīng)用程序使用TCP協(xié)議發(fā)送數(shù)據(jù)時(shí),由于TCP是基于流式的數(shù)據(jù)協(xié)議,會(huì)將數(shù)據(jù)像水流一樣粘在一起,當(dāng)接收方的數(shù)據(jù)容量小于發(fā)送的數(shù)據(jù)時(shí),如果不指定接收的數(shù)據(jù)長(zhǎng)度,...
套接字工作流程 先從服務(wù)器端說(shuō)起。服務(wù)器端先初始化Socket,然后與端口綁定(bind),對(duì)端口進(jìn)行監(jiān)聽(tīng)(listen),調(diào)用accept阻塞,等待客戶端連接。在這時(shí)如果有...
異常處理介紹 異常就是程序運(yùn)行時(shí)發(fā)生錯(cuò)誤的信號(hào)(在程序出現(xiàn)錯(cuò)誤時(shí),則會(huì)產(chǎn)生一個(gè)異常,若程序沒(méi)有處理它,則會(huì)拋出該異常,程序的運(yùn)行也隨之終止)為了保證程序的健壯性與容錯(cuò)性,即在...
為何要使用接口 1、接口提取了一群類共同的函數(shù),可以把接口當(dāng)做一個(gè)函數(shù)的集合。然后讓子類去實(shí)現(xiàn)接口中的函數(shù)。2、這么做的意義在于歸一化,就是只要是基于同一個(gè)接口實(shí)現(xiàn)的類,那么...
繼承介紹 繼承指的是類與類之間的關(guān)系,是一種什么是什么的關(guān)系,功能之一就是用來(lái)解決代碼重用問(wèn)題。繼承是一種創(chuàng)建新類的方式,在python中,新建的類可以繼承一個(gè)或多個(gè)父類,父...
在面向?qū)ο蟮某绦蛟O(shè)計(jì)模式中,使用類來(lái)區(qū)分具有相似屬性的對(duì)象。 類的定義和使用 使用class關(guān)鍵字來(lái)聲明一個(gè)類: 輸出: hello1.類中可以有任意python代碼,這些代...
Time 模塊 時(shí)間模塊常用的有如下幾種。 元組形式顯示時(shí)間: UTC時(shí)間: 將格式化的時(shí)間轉(zhuǎn)換為元組形式的時(shí)間: 時(shí)間轉(zhuǎn)換: Sun May 24 02:14:14 197...