添加多开检测

This commit is contained in:
fofolee 2022-05-02 19:03:26 +08:00
parent a53c1a16e0
commit 59d2906c74
2 changed files with 27 additions and 2 deletions

View File

@ -23,6 +23,25 @@ window.yuQueClient = axios.create({
}
});
// 检测进程是否存在
let isProcessExits = pid => {
try {
return process.kill(pid, 0)
} catch (e) {
return false
}
}
// 多开检测
window.multiProcessDetection = () => {
let pids = JSON.parse(localStorage.getItem('processes')) || [];
if (pids.length) pids = pids.filter(x => isProcessExits(x));
pids.push(process.pid)
localStorage.setItem('processes', JSON.stringify(pids))
if (pids.length > 1) return true;
return false;
}
// axios.defaults.adapter = require('axios/lib/adapters/http')
if (!utools.isWindows()) process.env.PATH += ':/usr/local/bin:/usr/local/sbin'

View File

@ -68,6 +68,14 @@ export default defineComponent({
_.cloneDeep(defaultProfile),
_.cloneDeep(userProfile)
);
//
this.setCssVar("primary", this.profile.primaryColor);
this.startUpOnce();
},
//
startUpOnce() {
if (window.multiProcessDetection())
return console.log("multiProcess Detected");
//
_.forIn(this.profile.crontabs, (cronExp, featureCode) => {
this.runCronTask(featureCode, cronExp);
@ -82,8 +90,6 @@ export default defineComponent({
);
console.log("Server Start...");
}
//
this.setCssVar("primary", this.profile.primaryColor);
},
enterPlugin(enter) {
// 使