@oaklean/profiler-core
Version:
Part of the @oaklean suite. It provides all basic functions to work with the `.oak` file format. It allows parsing the `.oak` file format as well as tools for analyzing the measurement values. It also provides all necessary capabilities required for prec
37 lines • 2.8 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.TimeHelper = void 0;
const loadNs = process.hrtime.bigint();
const loadMs = Date.now();
const loadNanoDiff = BigInt(loadMs) * BigInt(1e6) - loadNs;
class TimeHelper {
static getCurrentTimestamp() {
return new Date().getTime();
}
static getTimeDelta() {
return loadNanoDiff;
}
static getCurrentHighResolutionTime() {
return process.hrtime.bigint();
}
static timestampToHighResolutionTime(timestamp, timeDelta) {
return BigInt(timestamp) * BigInt(1e6) -
(timeDelta !== undefined ? timeDelta : loadNanoDiff);
}
static sleep(millis) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise(resolve => setTimeout(resolve, millis));
});
}
}
exports.TimeHelper = TimeHelper;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGltZUhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9oZWxwZXIvVGltZUhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFNQSxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFBO0FBQ3RDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQTtBQUN6QixNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQTtBQUMxRCxNQUFhLFVBQVU7SUFDdEIsTUFBTSxDQUFDLG1CQUFtQjtRQUN6QixPQUFPLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUE7SUFDNUIsQ0FBQztJQUVELE1BQU0sQ0FBQyxZQUFZO1FBQ2xCLE9BQU8sWUFBa0MsQ0FBQTtJQUMxQyxDQUFDO0lBRUQsTUFBTSxDQUFDLDRCQUE0QjtRQUNsQyxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUF3QixDQUFBO0lBQ3JELENBQUM7SUFFRCxNQUFNLENBQUMsNkJBQTZCLENBQ25DLFNBQThCLEVBQzlCLFNBQThCO1FBRTlCLE9BQU8sTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUM7WUFDdEMsQ0FBQyxTQUFTLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBdUIsQ0FBQTtJQUMzRSxDQUFDO0lBRUQsTUFBTSxDQUFPLEtBQUssQ0FBQyxNQUFjOztZQUNoQyxPQUFPLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFBO1FBQzNELENBQUM7S0FBQTtDQUNEO0FBeEJELGdDQXdCQyJ9