本文整理汇总了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) => {