Feature Request: allow async execution of subprocesses (bot commands)
- Ngôn ngữ chính
- Shell
- Star
- 101
- Fork
- 17
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
Lets create new command sleep.sh
```
#!/bin/bash
echo 'bot goes sleep'
sleep 60
echo 'bot has awoken'
```
`2021-07-23 02:57:34,328 | bot_commands [DEBUG] OS command "sleep.sh" with args: "[]"`
and it stops receiving commands for 60 seconds, whole debug console stopped, all communication to server.
How to fix it?
Tested on Python 3.9.2/Python 3.7.3
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Hướng nghiên cứu
Xem xét mã thực thi lệnh của bot, có thể là nơi các tiến trình con được tạo. Issue cho thấy một lệnh gọi đồng bộ làm bot bị chặn. Nghiên cứu việc thực thi tiến trình con bất đồng bộ trong Python (ví dụ: asyncio.create_subprocess_exec). Xác định trình xử lý lệnh và sửa nó để chạy các lệnh một cách bất đồng bộ mà không chặn vòng lặp sự kiện chính. Kiểm thử bằng cách chạy script sleep.sh được cung cấp và xác minh rằng bot vẫn phản hồi.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- python
- Lĩnh vực
- backend, cli
- Loại issue
- Tính năng
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức phù hợp với người mới
- 45/100