W3Cschool
恭喜您成為首批注冊(cè)用戶(hù)
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
cf庫(kù)為作者將底層實(shí)現(xiàn)的一些方法封裝后暴露到用戶(hù)層使用, 請(qǐng)不要隨意嘗試直接導(dǎo)入底層API進(jìn)行使用.
cf庫(kù)的API具體使用方法與后續(xù)產(chǎn)生的變更請(qǐng)?jiān)诖诉M(jìn)行查閱.
cf庫(kù)的導(dǎo)入方式為:
local cf = require "cf"
創(chuàng)建一個(gè)由cf管理的協(xié)程, 協(xié)程會(huì)自行啟動(dòng)/結(jié)束/回收.(目前不支持手動(dòng)停止并銷(xiāo)毀, 如有業(yè)務(wù)需要請(qǐng)直接return). 此方法沒(méi)有返回值.
返回當(dāng)前上下文的協(xié)程對(duì)象.
手動(dòng)暫停/讓出當(dāng)前協(xié)程. 返回值由wakeup傳遞
手動(dòng)喚醒指定協(xié)程. ...為傳遞給wait的返回值. wakeup本身沒(méi)有返回值
將當(dāng)前協(xié)程休眠sleep_time秒后繼續(xù)運(yùn)行. 此方法沒(méi)有返回值.
創(chuàng)建一個(gè)循環(huán)定時(shí)器每time秒運(yùn)行一次, 并且返回一個(gè)timer對(duì)象.
timer可以使用stop方法停止定時(shí)器, 多次停止是無(wú)害的.
創(chuàng)建一個(gè)定超時(shí)器且運(yùn)行一次, 并且返回一個(gè)timer對(duì)象.
timer可以使用stop方法停止定時(shí)器, 多次停止是無(wú)害的.
主動(dòng)解析一個(gè)域名, version用來(lái)確認(rèn)需要返回IPv6還是IPv4. 暫未實(shí)現(xiàn)(TODO)
請(qǐng)不要隨意跨越封裝層進(jìn)行l(wèi)ua或者C的底層API引用.
請(qǐng)不要過(guò)于濫用定時(shí)器相關(guān)API, 請(qǐng)確認(rèn)您是否真的有必要使用.
所有API都是同步非阻塞, 即使是定時(shí)器也同樣會(huì)導(dǎo)致重入問(wèn)題. 關(guān)于重入問(wèn)題需要自行在業(yè)務(wù)層確認(rèn).
fork創(chuàng)建協(xié)程由cf管理, cf內(nèi)部也會(huì)維護(hù)一個(gè)協(xié)程池并且管理協(xié)程的生命周期.
如果一旦您使用相關(guān)手動(dòng)管理API, cf將會(huì)放棄對(duì)該協(xié)程的操作.在該協(xié)程生命周期未結(jié)束之前(return), 將不會(huì)進(jìn)行內(nèi)存釋放. 所以, 您一旦使用相關(guān)API后需要手動(dòng)喚醒或者return.cf僅在協(xié)程執(zhí)行完畢/return后才會(huì)主動(dòng)進(jìn)行相關(guān)資源釋放.
如果您真的有需要直面底層API封裝私有庫(kù), 可以聯(lián)系作者幫助.
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話(huà):173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: