本文整理匯總了TypeScript中vs/editor/test/common/model/benchmark/benchmarkUtils.BenchmarkSuite類的典型用法代碼示例。如果您正苦於以下問題:TypeScript BenchmarkSuite類的具體用法?TypeScript BenchmarkSuite怎麽用?TypeScript BenchmarkSuite使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了BenchmarkSuite類的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: generateRandomChunkWithLF
let chunkCnt = Math.floor(fileSize / (64 * 1000));
if (chunkCnt === 0) {
chunks.push(generateRandomChunkWithLF(fileSize, fileSize));
} else {
let chunk = generateRandomChunkWithLF(64 * 1000, 64 * 1000);
// try to avoid OOM
for (let j = 0; j < chunkCnt; j++) {
chunks.push(Buffer.from(chunk + j).toString());
}
}
for (let editType of editTypes) {
const edits = editType.generateEdits(chunks, 1000);
let editsSuite = new BenchmarkSuite({
name: `File Size: ${fileSize}Byte, ${editType.id}`,
iterations: 10
});
editsSuite.add({
name: `apply 1000 edits`,
buildBuffer: (textBufferBuilder: ITextBufferBuilder) => {
chunks.forEach(ck => textBufferBuilder.acceptChunk(ck));
return textBufferBuilder.finish();
},
preCycle: (textBuffer) => {
return textBuffer;
},
fn: (textBuffer) => {
// for line model, this loop doesn't reflect the real situation.
for (let k = 0; k < edits.length; k++) {
textBuffer.applyEdits([edits[k]], false);
示例2: generateRandomChunkWithLF
for (let fileSize of fileSizes) {
let chunks: string[] = [];
let chunkCnt = Math.floor(fileSize / (64 * 1000));
if (chunkCnt === 0) {
chunks.push(generateRandomChunkWithLF(fileSize, fileSize));
} else {
let chunk = generateRandomChunkWithLF(64 * 1000, 64 * 1000);
// try to avoid OOM
for (let j = 0; j < chunkCnt; j++) {
chunks.push(Buffer.from(chunk + j).toString());
}
}
let replaceSuite = new BenchmarkSuite({
name: `File Size: ${fileSize}Byte`,
iterations: 10
});
let edits = generateRandomReplaces(chunks, 500, 5, 10);
for (let i of [10, 100, 500]) {
replaceSuite.add({
name: `replace ${i} occurrences`,
buildBuffer: (textBufferBuilder: ITextBufferBuilder) => {
chunks.forEach(ck => textBufferBuilder.acceptChunk(ck));
return textBufferBuilder.finish();
},
preCycle: (textBuffer) => {
return textBuffer;
},
fn: (textBuffer) => {