mirror of
https://github.com/LiteyukiStudio/LiteyukiBot.git
synced 2024-11-23 00:57:42 +08:00
🐛 修复无法重启进程的问题(未启动生命监视器)
This commit is contained in:
parent
9b07d41f86
commit
adc9b76688
@ -27,7 +27,7 @@ SYNC_FILTER_FUNC: TypeAlias = Callable[[Any], bool]
|
|||||||
ASYNC_FILTER_FUNC: TypeAlias = Callable[[Any], Awaitable[bool]]
|
ASYNC_FILTER_FUNC: TypeAlias = Callable[[Any], Awaitable[bool]]
|
||||||
FILTER_FUNC: TypeAlias = SYNC_FILTER_FUNC | ASYNC_FILTER_FUNC
|
FILTER_FUNC: TypeAlias = SYNC_FILTER_FUNC | ASYNC_FILTER_FUNC
|
||||||
|
|
||||||
IS_MAIN_PROCESS = multiprocessing.current_process().name == "MainProcess"
|
|
||||||
|
|
||||||
_channel: dict[str, "Channel"] = {}
|
_channel: dict[str, "Channel"] = {}
|
||||||
_callback_funcs: dict[str, ON_RECEIVE_FUNC] = {}
|
_callback_funcs: dict[str, ON_RECEIVE_FUNC] = {}
|
||||||
|
14
liteyuki/comm/shared_memory.py
Normal file
14
liteyuki/comm/shared_memory.py
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
"""
|
||||||
|
共享内存模块。类似于redis,但是更加轻量级。
|
||||||
|
"""
|
||||||
|
|
||||||
|
memory_database = {}
|
||||||
|
|
||||||
|
|
||||||
|
def set_memory(key: str, value: any) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
def get_mem_data(key: str) -> any:
|
||||||
|
pass
|
@ -87,6 +87,8 @@ class ProcessManager:
|
|||||||
else:
|
else:
|
||||||
logger.warning("Unknown data received, ignored.")
|
logger.warning("Unknown data received, ignored.")
|
||||||
|
|
||||||
|
_start_monitor()
|
||||||
|
|
||||||
def start_all(self):
|
def start_all(self):
|
||||||
"""
|
"""
|
||||||
启动所有进程
|
启动所有进程
|
||||||
|
@ -4,11 +4,13 @@
|
|||||||
"""
|
"""
|
||||||
import asyncio
|
import asyncio
|
||||||
import inspect
|
import inspect
|
||||||
|
import multiprocessing
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from typing import Any, Callable, Coroutine
|
from typing import Any, Callable, Coroutine
|
||||||
|
|
||||||
from liteyuki.log import logger
|
from liteyuki.log import logger
|
||||||
|
|
||||||
|
IS_MAIN_PROCESS = multiprocessing.current_process().name == "MainProcess"
|
||||||
|
|
||||||
def is_coroutine_callable(call: Callable[..., Any]) -> bool:
|
def is_coroutine_callable(call: Callable[..., Any]) -> bool:
|
||||||
"""
|
"""
|
||||||
|
@ -11,38 +11,38 @@ license = "MIT & LSO"
|
|||||||
package-mode = false
|
package-mode = false
|
||||||
|
|
||||||
|
|
||||||
[tool.poetry.dependencies]
|
#[tool.poetry.dependencies]
|
||||||
python = "^3.10"
|
#python = "^3.10"
|
||||||
aiofiles = "~23.2.1"
|
#aiofiles = "~23.2.1"
|
||||||
aiohttp = "~3.9.3"
|
#aiohttp = "~3.9.3"
|
||||||
aiosqlite3 = "~0.3.0"
|
#aiosqlite3 = "~0.3.0"
|
||||||
colored = "~2.2.4"
|
#colored = "~2.2.4"
|
||||||
fastapi = "~0.110.0"
|
#fastapi = "~0.110.0"
|
||||||
GitPython = "~3.1.42"
|
#GitPython = "~3.1.42"
|
||||||
httpx = "~0.27.0"
|
#httpx = "~0.27.0"
|
||||||
importlib_metadata = "~7.0.2"
|
#importlib_metadata = "~7.0.2"
|
||||||
jieba = "~0.42.1"
|
#jieba = "~0.42.1"
|
||||||
loguru = "~0.7.2"
|
#loguru = "~0.7.2"
|
||||||
nb-cli = "~1.4.1"
|
#nb-cli = "~1.4.1"
|
||||||
nonebot-adapter-onebot = "~2.4.3"
|
#nonebot-adapter-onebot = "~2.4.3"
|
||||||
nonebot-adapter-satori = "~0.11.5"
|
#nonebot-adapter-satori = "~0.11.5"
|
||||||
nonebot-plugin-alconna = "~0.46.3"
|
#nonebot-plugin-alconna = "~0.46.3"
|
||||||
nonebot-plugin-apscheduler = "~0.4.0"
|
#nonebot-plugin-apscheduler = "~0.4.0"
|
||||||
nonebot-plugin-htmlrender = "~0.3.1"
|
#nonebot-plugin-htmlrender = "~0.3.1"
|
||||||
nonebot2 = { version = "~2.3.0", extras = ["fastapi", "httpx", "websockets"] }
|
#nonebot2 = { version = "~2.3.0", extras = ["fastapi", "httpx", "websockets"] }
|
||||||
numpy = "~2.0.0"
|
#numpy = "~2.0.0"
|
||||||
packaging = "~23.1"
|
#packaging = "~23.1"
|
||||||
psutil = "~5.9.8"
|
#psutil = "~5.9.8"
|
||||||
py-cpuinfo = "~9.0.0"
|
#py-cpuinfo = "~9.0.0"
|
||||||
pydantic = "~2.7.0"
|
#pydantic = "~2.7.0"
|
||||||
Pygments = "~2.17.2"
|
#Pygments = "~2.17.2"
|
||||||
python-dotenv = "~1.0.1"
|
#python-dotenv = "~1.0.1"
|
||||||
pytest = "~8.3.1"
|
#pytest = "~8.3.1"
|
||||||
pytz = "~2024.1"
|
#pytz = "~2024.1"
|
||||||
PyYAML = "~6.0.1"
|
#PyYAML = "~6.0.1"
|
||||||
requests = "~2.31.0"
|
#requests = "~2.31.0"
|
||||||
starlette = "~0.36.3"
|
#starlette = "~0.36.3"
|
||||||
watchdog = "~4.0.0"
|
#watchdog = "~4.0.0"
|
||||||
|
|
||||||
|
|
||||||
[[tool.poetry.source]]
|
[[tool.poetry.source]]
|
||||||
|
18
src/liteyuki_plugins/scheduled_tasks/__init__.py
Normal file
18
src/liteyuki_plugins/scheduled_tasks/__init__.py
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
"""
|
||||||
|
Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved
|
||||||
|
|
||||||
|
@Time : 2024/8/15 下午11:29
|
||||||
|
@Author : snowykami
|
||||||
|
@Email : snowykami@outlook.com
|
||||||
|
@File : __init__.py.py
|
||||||
|
@Software: PyCharm
|
||||||
|
"""
|
||||||
|
from liteyuki.plugin import PluginMetadata
|
||||||
|
|
||||||
|
from .divided_by_lifespan import *
|
||||||
|
|
||||||
|
__plugin_mata__ = PluginMetadata(
|
||||||
|
name="计划任务",
|
||||||
|
description="计划任务插件,一些杂项任务的计划执行。",
|
||||||
|
)
|
@ -0,0 +1,10 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
"""
|
||||||
|
Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved
|
||||||
|
|
||||||
|
@Time : 2024/8/15 下午11:32
|
||||||
|
@Author : snowykami
|
||||||
|
@Email : snowykami@outlook.com
|
||||||
|
@File : __init__.py
|
||||||
|
@Software: PyCharm
|
||||||
|
"""
|
@ -0,0 +1,23 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
"""
|
||||||
|
Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved
|
||||||
|
|
||||||
|
@Time : 2024/8/15 下午11:32
|
||||||
|
@Author : snowykami
|
||||||
|
@Email : snowykami@outlook.com
|
||||||
|
@File : after_start.py
|
||||||
|
@Software: PyCharm
|
||||||
|
"""
|
||||||
|
import time
|
||||||
|
|
||||||
|
from liteyuki import get_bot
|
||||||
|
|
||||||
|
liteyuki = get_bot()
|
||||||
|
|
||||||
|
|
||||||
|
@liteyuki.on_after_start
|
||||||
|
def save_startup_timestamp():
|
||||||
|
"""
|
||||||
|
储存启动的时间戳
|
||||||
|
"""
|
||||||
|
startup_timestamp = time.time()
|
Loading…
Reference in New Issue
Block a user