mirror of
https://github.com/fofolee/uTools-quickcommand.git
synced 2025-06-28 20:02:44 +08:00
添加多开检测
This commit is contained in:
parent
a53c1a16e0
commit
59d2906c74
@ -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'
|
||||
|
10
src/App.vue
10
src/App.vue
@ -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) {
|
||||
// 使用情况统计
|
||||
|
Loading…
x
Reference in New Issue
Block a user