Integrate worker to offload main thread from heavy tasks

This commit is contained in:
2025-11-11 15:13:38 +01:00
parent 0f1fff0609
commit 0451a1c960
8 changed files with 115 additions and 205 deletions

View File

@@ -0,0 +1,27 @@
import { parentPort } from 'worker_threads';
import {NameCardCreator} from "./nameCardCreator.js";
parentPort.on("message", async (data) => {
try {
const { templatePath, avatarURL, username } = data;
const creator = new NameCardCreator(templatePath);
const buffer = await creator.getWelcomeCard(avatarURL, username);
parentPort.postMessage({ result: buffer });
} catch (err) {
parentPort.postMessage({ error: err.message });
}
});
/*(async () => {
try {
const { creator, avatarURL, userName } = workerData;
const buffer = await creator.getWelcomeCard(avatarURL, userName);
parentPort.postMessage(buffer); // return the buffer to main thread
} catch (err) {
parentPort.postMessage({ error: err.message });
}
})();*/