mirror of
https://gitcode.com/gh_mirrors/hy/Hydro.git
synced 2026-10-19 17:38:19 +08:00
升级queue为task
This commit is contained in:
1 parent
e7ce8c1f02
commit
5d7f57334f
14 files changed
+145
-130
No files matched your search
+21
-5
@@ -26,8 +26,8 @@ async function handler() {
|
||||
for (const i of active) {
|
||||
if (i.handler) {
|
||||
console.time(`Handler init: ${i.id}`);
|
||||
const module = {}; // eslint-disable-line no-unused-vars
|
||||
const exports = {}; // eslint-disable-line no-unused-vars
|
||||
const exports = {};
|
||||
const module = { exports }; // eslint-disable-line no-unused-vars
|
||||
eval(i.handler);
|
||||
console.timeEnd(`Handler init: ${i.id}`);
|
||||
}
|
||||
@@ -56,15 +56,28 @@ async function model() {
|
||||
for (const i of active) {
|
||||
if (i.model) {
|
||||
console.time(`Model init: ${i.id}`);
|
||||
const module = {};
|
||||
const exports = {}; // eslint-disable-line no-unused-vars
|
||||
eval(i.handler);
|
||||
const module = { exports };
|
||||
eval(i.model);
|
||||
if ((module.exports || {}).index) await module.exports.index();
|
||||
console.timeEnd(`Model init: ${i.id}`);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
async function service() {
|
||||
for (const i of active) {
|
||||
if (i.service) {
|
||||
console.time(`Service init: ${i.id}`);
|
||||
const exports = {}; // eslint-disable-line no-unused-vars
|
||||
const module = { exports };
|
||||
eval(i.service);
|
||||
if ((module.exports || {}).init) await module.exports.init();
|
||||
console.timeEnd(`Service init: ${i.id}`);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
async function load() {
|
||||
global.Hydro = {
|
||||
handler: {},
|
||||
@@ -99,8 +112,8 @@ async function load() {
|
||||
for (const i of builtinLib) require(`./lib/${i}`);
|
||||
await locale();
|
||||
require('./service/gridfs');
|
||||
require('./service/queue');
|
||||
const server = require('./service/server');
|
||||
await service();
|
||||
const builtinModel = [
|
||||
'blacklist', 'builtin', 'contest', 'discussion', 'message',
|
||||
'opcount', 'problem', 'record', 'setting', 'solution',
|
||||
@@ -122,6 +135,9 @@ async function load() {
|
||||
}
|
||||
const notfound = require('./handler/notfound');
|
||||
await notfound.apply();
|
||||
for (const i in global.Hydro.service) {
|
||||
if (global.Hydro.service[i].postInit) await global.Hydro.service[i].postInit();
|
||||
}
|
||||
server.start();
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user