g
Size: a a a
Е
Е
import core.thread;
import std.stdio;
import std.algorithm;
import std.datetime.stopwatch;
const numFibers = 1_000_000;
const stackSize = 4 * 1024 * 1024; // 4 Mb
void worker() {
Fiber.yield();
}
void main() {
auto fibers = new Fiber[numFibers];
auto results = benchmark!({
foreach(ref f; fibers) f = new Fiber(&worker, stackSize, 0);
}, {
fibers.each!(f => f.call());
})(1);
writefln("create: %s", results[0]);
writefln("run: %s", results[1]);
}
DH
EP