From fe97f78b9a343ee9fa45a3531d03d73dcd1df31b Mon Sep 17 00:00:00 2001 From: qx <1084500556@qq.com> Date: 星期三, 06 八月 2025 10:15:12 +0800 Subject: [PATCH] :测试提交“ --- uni_modules/Sansnn-uQRCode/common/queue.js | 41 +++++++++++++++++++++++++++++++++++++++++ 1 files changed, 41 insertions(+), 0 deletions(-) diff --git a/uni_modules/Sansnn-uQRCode/common/queue.js b/uni_modules/Sansnn-uQRCode/common/queue.js new file mode 100644 index 0000000..be6b1d2 --- /dev/null +++ b/uni_modules/Sansnn-uQRCode/common/queue.js @@ -0,0 +1,41 @@ +function Queue() { + let waitingQueue = this.waitingQueue = []; + let isRunning = this.isRunning = false; // 璁板綍鏄惁鏈夋湭瀹屾垚鐨勪换鍔� + + function execute(task, resolve, reject) { + task() + .then((data) => { + resolve(data); + }) + .catch((e) => { + reject(e); + }) + .finally(() => { + // 绛夊緟浠诲姟闃熷垪涓鏋滄湁浠诲姟锛屽垯瑙﹀彂瀹冿紱鍚﹀垯璁剧疆isRunning = false,琛ㄧず鏃犱换鍔$姸鎬� + if (waitingQueue.length) { + const next = waitingQueue.shift(); + execute(next.task, next.resolve, next.reject); + } else { + isRunning = false; + } + }); + } + this.exec = function(task) { + return new Promise((resolve, reject) => { + if (isRunning) { + waitingQueue.push({ + task, + resolve, + reject + }); + } else { + isRunning = true; + execute(task, resolve, reject); + } + }); + } +} + +/* 闃熷垪瀹炰緥锛屾煇浜涘钩鍙颁竴璧蜂娇鐢ㄥ涓粍浠舵椂闇�瑕侀�氳繃闃熷垪閫愪竴缁樺埗锛屽惁鍒欓儴鍒嗙粯鍒舵柟娉曞紓甯革紝nvue绔殑iOS gcanvas灏ゅ叾鏄庢樉锛屽湪涓嶉�氳繃闃熷垪缁樺埗鏃朵細鍑虹幇鍥剧墖涓㈠け鐨勬儏鍐� */ +export const queueDraw = new Queue(); +export const queueLoadImage = new Queue(); \ No newline at end of file -- Gitblit v1.8.0