tag 協程

標籤
貢獻34
99
10:01 AM · Nov 03 ,2025

@協程 / 博客 RSS 訂閱

Mark - 我們一起來學lua:協程(coroutine) 二

大家好,騷氣十足的額,又來了,對,今天我們主要來學習下lua協程的用法,小夥伴們準備好小板凳,準備開車了~~~(ps:好像有點偏題了,不過不重要你們當作沒看見就行(O ^ ~ ^ O)) 協程主要函數: 函數名 入參 返回值 描述 coroutine.create() 接受單個參數,這個參數是coroutine的主函數 返回

coroutine , lua , 協程

收藏 評論

柳公子 - PHP 多任務協程處理

本文首發於 PHP 多任務協程處理,轉載請註明出處! 上週 有幸和同事一起在 SilverStripe 分享最近的工作事宜。今天我計劃分享 PHP 異步編程,不過由於上週我聊過 ReactPHP;我決定討論一些不一樣的內容。所以本文將探討多任務協程這方面的內容。 另外我還計劃把這個主題加入到我正在籌備的一本 PHP 異步編程的圖書中。雖然這本書相比本文來説會涉及更多細節,但我覺得本文依然具有實際意

php , yield , 協程

收藏 評論

kumfo - 關於PHP協程與阻塞的思考

進程、線程、協程 關於進程、線程、協程,有非常詳細和豐富的博客或者學習資源,我不在此做贅述,我大致在此介紹一下這幾個東西。 進程擁有自己獨立的堆和棧,既不共享堆,亦不共享棧,進程由操作系統調度。 線程擁有自己獨立的棧和共享的堆,共享堆,不共享棧,線程亦由操作系統調度(標準線程是的)。 協程和線程一樣共享堆,不共享棧,協程由程序員在協程的代碼裏顯示調度。 PHP中的協程實現基礎 yield

php , yield , 協程

收藏 評論

liuyuede - go channel原理及使用場景

轉載自:go channel原理及使用場景 源碼解析 type hchan struct { qcount uint // Channel 中的元素個數 dataqsiz uint // Channel 中的循環隊列的長度 buf unsafe.Pointer // Channel 的緩衝區數據指針 elemsi

channel , 協程 , go

收藏 評論

吉吉哥 - Android中的Coroutine協程原理詳解

前言 協程是一個併發方案。也是一種思想。 傳統意義上的協程是單線程的,面對io密集型任務他的內存消耗更少,進而效率高。但是面對計算密集型的任務不如多線程並行運算效率高。 不同的語言對於協程都有不同的實現,甚至同一種語言對於不同平台的操作系統都有對應的實現。 我們kotlin語言的協程是 coroutines for jvm的實現方式。底層原理也是利用java 線程。 基礎知識 生態架構 相關依

coroutine , 協程 , Android , 線程 , 併發

收藏 評論

拉布拉多拉的多 - 填坑之PHP的yield和協程在一起的日子裏(二)

首先是,這是我第一次把公眾號文章複製粘貼到sf.gg來。 其次是,很久很久之前,我挖了一個yield的一個坑,自己挖的坑自己填,不然遲早會把自己埋掉。 最後是,如果想看之前那個坑,請發送“yield”給文章末尾的公眾號,我開通了高大上的自動回覆功能,稀罕地不得了! PS:那篇文章中在最後我犯了一個錯誤,誤下了一個結論:foreach中不能使用send並猜測這是PHP的bug,實際上並不是,真實的原

並行 , php , yield , 協程

收藏 評論

林舍 - 聊一聊協程(上):從Node.js談起

本文已收錄【修煉內功】躍遷之路 在上一篇文章JVM 細説線程中已經介紹了應用程序常見的一些線程模型,本篇就上篇提及的協程做簡單的介紹 談到併發/異步,首先想到的可能便是線程/進程,Java在近20年的發展中從JDK1.2之後便採用1:1線程模型,Java在核心類庫中提供了眾多異步API,可以使多線程應用發揮強大的併發能力並獲得不錯的性能 如今,在很多高併發的場景下(如I/O密集型)操作系統的線

coroutine , 協程

收藏 評論

Mark - 我們一起來學lua:協程(coroutine) 三

*上一期我們主要介紹了協程的相關函數,以及協程的創建。這一期,我們主要來介紹協程怎麼進行協作的,而協作也正是協程的精華所在,小夥伴們,小板凳帶好了嘛?≧◠◡◠≦✌* 生活當中我們做事情經常都是不可能一干到底的。比如,你正在看書,這時候突然來了個電話,或者説你在跟朋友家人視頻聊天,這時候突然沒信號了了。在這種情況下,我們都不得不停下原先手中的事情,去處理其他事情,等其他事情處理完了,再接着原先的事情

coroutine , lua , 協程

收藏 評論

何一鳴 - php 實現 Promise.all 和 Promise.race

測試 $promise1 = function () { msleep(500); return 'one'; }; $promise2 = function () { msleep(100); return 'two'; }; $promise3 = function () { msleep(50); throw new \Exception('Reject

promise , coroutine , swow , php , 協程

收藏 評論

Mark - 我們一起來學lua:協程(coroutine) 一

相同點: 協程跟線程很接近,但是又有區別,我們先來看看協程跟線程一樣的地方:函數運行時都會開闢自己的獨立棧,局部變量和PC計數器,同時又與其他協程共享全局變量和其他大部分東西,這一點是不是跟線程很像? 不同點: 協程和線程最主要的區別在於:多個線程可以一起跑,他們可以共同去競爭cpu,也就是説多個線程是可以同時並行運行的。而協程就不一樣了,多協程的話,只有一個協程在跑,其他協程就必須在那裏等着,只

coroutine , lua , 協程

收藏 評論

Mark - 我們一起來學lua:協程(coroutine) 四

今天我們先來看下lua手冊上一個協程實例: 手冊實例: function foo(a) print("foo", a) return coroutine.yield(2 * a) end co = coroutine.create(function ( a, b ) print("co-body", a, b) local r = foo(a + 1) p

coroutine , lua , 協程

收藏 評論

小白要生髮 - PHP yield 協程 生成器 用法探究(一)

寫在前面 這篇文章,要和大家探討的是 PHP yield 在 生成器用法,不帶 foreach,for, while 循環的那種。就討論 yield 將一個函數變成為生成器的用法。 關於yield 特性,是在開發 PHP5 時被提上日程,PHP5.5 版本正式加入。 關於yield的使用,我看到大部分文章都停留在,使用yield如何在foreach中傳出數據,今天想給大家講講 生成器 所有

php , yield , generator , 語法 , 協程

收藏 評論

ones - PHP7中生成器的新特性 yield-from && return-values

生成器委託 簡單地翻譯官方文檔的描述: PHP7中,通過生成器委託(yield from),可以將其他生成器、可迭代的對象、數組委託給外層生成器。外層的生成器會先順序 yield 委託出來的值,然後繼續 yield 本身中定義的值。 利用 yield from 可以方便我們編寫比較清晰生成器嵌套,而代碼嵌套調用是編寫複雜系統所必需的。 上例子: ?php function echoTi

yield-from , php , yield , 協程

收藏 評論

proheart - Kotlin之Coroutine實戰(1)

Android協程解決什麼問題? 處理耗時任務,這種任務常常會阻塞主線程 保證主線程安全,確保安全地從主線程調用任何suspend函數 舉例子(異步任務) 實現一個請求網絡數據的例子:頁面上有一個button,一個loading,一個textview用來顯示結果。點擊button,顯示loading,向server發送請求,拿到數據後把result顯示在textview上,並隱藏loadi

Kotlin , coroutine , 協程 , Android

收藏 評論

member - Python庫集合

作者:蕭啊https://www.zhihu.com/questio... awesome-web-scraping 中文版 本文由 伯樂在線 - LynnShaw 翻譯,賴信濤 校稿。未經許可,禁止轉載! 英文出處:Gregory Petukhov。歡迎加入翻譯組。 這個列表包含與網頁抓取和數據處理的Python庫 網絡 通用 urllib -網絡庫(stdli

python3.x , coroutine , 協程 , django , Python

收藏 評論

午後一小憩 - 重温Retrofit源碼,笑看協程實現

最近迴歸看了一下Retrofit的源碼,主要是因為項目接入了協程,所以想研究一下Retorift是如何支持協程的。Retrofit是在Version 2.6.0開始支持協程的,所以本篇文章有關Retrofit的源碼都是基於2.6.0的。 温馨提示,如果有Retrofit的源碼閲讀經驗,閲讀這篇文章將會輕鬆很多。 !--放心你沒有進錯房間,這不是分析協程的文章,只是剛好談到協程,所以還是簡單

Kotlin , coroutine , retrofit , 協程 , Android

收藏 評論

7mandy7 - Golang都有哪些值得推薦的學習資料

前面幾篇文章,給大家總結了一些關於Golang中不錯的開源框架、開源庫等相關的內容。今天接着給分享一些不錯的學習資源內容。同時也會分享一些優質的教學視頻、高質量的電子書籍。想獲取該文檔、視頻,可以通過下面的文章鏈接,進入公眾號菜單,聯繫號主。 你應該知道的17個Golang包 Go開發的linux、數據庫、redis、mongo統一管理操作平台 使用Go開源的一款性能監控軟件 使用 Go

協程 , 學習資料 , 併發編程 , go

收藏 評論

liuyuede - goroutine調度

0.1、索引 https://blog.waterflow.link/articles/1662974432717 1、進程 一個進程包含可以由任何進程分配的公共資源。這些資源包括但不限於內存地址空間、文件句柄、設備和線程。 一個進程會包含下面一些屬性: Process ID:進程ID Process State:進程狀態 Process Priority:進程優先級 Program C

goroutine , 協程 , gmp

收藏 評論

屈天航 - 聊一聊python和golang協程的區別

背景 最近在做後端服務python到go的重構,這兩種語言裏,最大的特色和優勢就是都支持協程。之前主要做python的性能優化和架構優化,一開始覺得兩個協程原理和應用應該差不多,後來發現還是有很大的區別,今天就在這裏總結一下。 什麼是協程 在説它們兩者區別前,我們首先聊一下什麼是協程,好像它沒有一個官方的定義,那就結合平時的應用經驗和學習內容來談談自己的理解。 協程,其實可以理解為一種用户態特殊

goroutine , coroutine , 協程 , go , Python

收藏 評論

拉布拉多拉的多 - PHP的yield是個什麼玩意(一)

其實,我並不是因為迭代或者生成器或者研究PHP手冊才認識的yield,要不是協程,我到現在也不知道PHP中還有yield這麼個鬼東西。人家這個東西是從PHP 5.5就開始引入了,官方名稱叫做生成器。你要説為什麼5.5年代的東西,現在才拿出來。我還想問你喲,PHP 5.3就有了的namespace為毛到最近這幾年才開始正式投產。 那麼,問題來了,這東西到底是有何用? 先來感受一個問題,給你100Kb

php , yield , 協程

收藏 評論

爆裂Gopher - 淺談Goroutine的調度機制

一、什麼是Goroutine 在go語言中,每一個併發的執行單元叫作一個goroutine,與併發相對的是串行,即代碼按照順序一行一行執行,goroutine 給 go 語言提供了併發編程的能力。 當一個程序啓動時,其主函數在一個單獨的goroutine中運行,我們叫它main goroutine,新的goroutine會用go語句來創建。在語法上,go語句是一個普通的函數或方法調用前加上關鍵字g

調度器 , goroutine , 協程 , gmp , go

收藏 評論

小白要生髮 - PHP yield from 生成器用法探究(二)

繼續 上次給大家講了PHP yield 的用法,今天給大家講講 yield from。 看到這裏來,一定是 PHP.net 看得不過癮吧,這篇文章一定把 yield from 語法給你講透徹。 三部曲 yield 語法探究 yield from 語法探究 yield 實戰“多線程”編碼 語法 ?php function func() { yield from $expressi

yield-from , php , yield , 協程

收藏 評論

劉悦的技術博客 - 物無定味適口者珍,Python3併發場景(CPU密集/IO密集)任務的併發方式的場景抉擇(多線程/多進程/協程asyncio)

原文轉載自「劉悦的技術博客」https://v3u.cn/a_id_221 一般情況下,大家對Python原生的併發/並行工作方式:進程、線程和協程的關係與區別都能講清楚。甚至具體的對象名稱、內置方法都可以如數家珍,這顯然是極好的,但我們其實都忽略了一個問題,就是具體應用場景,三者的使用目的是一樣的,話句話説,使用結果是一樣的,都可以提高程序運行的效率,但到底那種場景用那種方式更好一點? 這就好比

python3.x , 協程 , 多線程 , 多進程 , Python

收藏 評論

劉悦的技術博客 - 運籌帷幄決勝千里,Python3.10原生協程asyncio工業級真實協程異步消費任務調度實踐

我們一直都相信這樣一種説法:協程是比多線程更高效的一種併發工作方式,它完全由程序本身所控制,也就是在用户態執行,協程避免了像線程切換那樣產生的上下文切換,在性能方面得到了很大的提升。毫無疑問,這是顛撲不破的業界共識,是放之四海而皆準的真理。 但事實上,協程遠比大多數人想象中的複雜,正因為協程的“用户態”特性,任務調度權掌握在撰寫協程任務的人手裏,而僅僅依賴async和await關鍵字遠遠達不到“調

調度器 , python3.x , async , 協程 , Python

收藏 評論