當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript Queue.queue方法代碼示例

本文整理匯總了TypeScript中vs/base/common/async.Queue.queue方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript Queue.queue方法的具體用法?TypeScript Queue.queue怎麽用?TypeScript Queue.queue使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在vs/base/common/async.Queue的用法示例。


在下文中一共展示了Queue.queue方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: test

	test('Queue - events', function (done) {
		let queue = new async.Queue();

		let finished = false;
		queue.onFinished(() => {
			done();
		});

		let res: number[] = [];

		let f1 = () => async.timeout(10).then(() => res.push(2));
		let f2 = () => async.timeout(20).then(() => res.push(4));
		let f3 = () => async.timeout(0).then(() => res.push(5));

		const q1 = queue.queue(f1);
		const q2 = queue.queue(f2);
		queue.queue(f3);

		q1.then(() => {
			assert.ok(!finished);
			q2.then(() => {
				assert.ok(!finished);
			});
		});
	});
開發者ID:,項目名稱:,代碼行數:25,代碼來源:

示例2:

					return queue.queue(f4).then(() => {
						return queue.queue(f5).then(() => {
							assert.equal(res[0], 1);
							assert.equal(res[1], 2);
							assert.equal(res[2], 3);
							assert.equal(res[3], 4);
							assert.equal(res[4], 5);
						});
					});
開發者ID:,項目名稱:,代碼行數:9,代碼來源:

示例3: test

	test('Queue - simple', function () {
		let queue = new Async.Queue();

		let syncPromise = false;
		let f1 = () => TPromise.as(true).then(() => syncPromise = true);

		let asyncPromise = false;
		let f2 = () => TPromise.timeout(10).then(() => asyncPromise = true);

		assert.equal(queue.size, 0);

		queue.queue(f1);
		assert.equal(queue.size, 0); // sync promise is already done

		const p = queue.queue(f2);
		assert.equal(queue.size, 1);
		return p.then(() => {
			assert.equal(queue.size, 1);
			assert.ok(syncPromise);
			assert.ok(asyncPromise);
		});
	});
開發者ID:liunian,項目名稱:vscode,代碼行數:22,代碼來源:async.test.ts


注:本文中的vs/base/common/async.Queue.queue方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。