让我知道我不是孤独的,可能的话告诉我下一步该怎么做消除死机的风险
以下分成背景基础运行和触发情境(意思是我在做这件事的时候就死机了)
我的死机有两种 一种是整个画面卡住,需要手动关机,一种是我刚刚经历的,会自己关机重新开启
硬体与windows版本
以下是电脑的基础参数
显卡 nvidia 4060 laptop
背景运行
- 语音转文字 GitHub - HaujetZhao/CapsWriter-Offline: CapsWriter 的离线版,一个好用的 PC 端的语音输入工具
- 多个本地flask应用 (azure2opneai, svg converter, tts)
- typora(用的老友们的破解方案后的软体
- geforce(会列出他是因为他常常跳出来 觉得死机说不定也有他一份力)
- 一键关闭萤幕 EasyScreenOff一款能禁止鼠标唤醒屏幕的关屏软件(关闭显示器) - 发现频道 🔎 - 小众软件官方论坛
- everything
- pixpin
- auto dark mode
- 鼠标连点器 GitHub - YunMengs/ZMClick: 织梦鼠标连点器
- 一个python的小应用 用于简体中文繁体中文切换 使用pyqt
代码
import sys
import json
import os
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QHBoxLayout, QTextEdit, QPushButton, QRadioButton, QButtonGroup, QLabel, QSystemTrayIcon, QStyle
from PyQt5.QtCore import QThread, pyqtSignal, Qt
from PyQt5.QtGui import QClipboard, QIcon
import opencc
CURRENT_DIR = os.path.dirname(os.path.abspath(__file__))
CONFIG_FILE = os.path.join(CURRENT_DIR, 'config.json')
ICON_FILE = os.path.join(CURRENT_DIR, 'icon.png')
class ConversionThread(QThread):
finished = pyqtSignal(str)
def __init__(self, text, conversion_type):
super().__init__()
self.text = text
self.conversion_type = conversion_type
def run(self):
config = 's2t' if self.conversion_type == 's2t.json' else 't2s'
converter = opencc.OpenCC(config)
converted_text = converter.convert(self.text)
self.finished.emit(converted_text)
class ChineseConverter(QWidget):
def __init__(self):
super().__init__()
self.converted_text = ""
self.last_conversion = 's2t.json' # 默认值
self.load_config()
self.initUI()
self.initSystemTray()
def load_config(self):
try:
if os.path.exists(CONFIG_FILE) and os.path.getsize(CONFIG_FILE) > 0:
with open(CONFIG_FILE, 'r', encoding='utf-8') as f:
config = json.load(f)
self.last_conversion = config.get('last_conversion', 's2t.json')
else:
print(f"配置文件 {CONFIG_FILE} 不存在或为空,使用默认设置。")
except json.JSONDecodeError:
print(f"配置文件 {CONFIG_FILE} 包含无效的 JSON 数据,使用默认设置。")
except Exception as e:
print(f"读取配置文件时发生错误: {str(e)},使用默认设置。")
def save_config(self):
config = {'last_conversion': 's2t.json' if self.s2t_radio.isChecked() else 't2s.json'}
try:
with open(CONFIG_FILE, 'w', encoding='utf-8') as f:
json.dump(config, f, ensure_ascii=False, indent=4)
except Exception as e:
print(f"保存配置文件时发生错误: {str(e)}")
def initUI(self):
layout = QVBoxLayout()
radio_layout = QHBoxLayout()
self.s2t_radio = QRadioButton("简体到繁体")
self.t2s_radio = QRadioButton("繁体到简体")
self.s2t_radio.setChecked(self.last_conversion == 's2t.json')
self.t2s_radio.setChecked(self.last_conversion == 't2s.json')
radio_group = QButtonGroup()
radio_group.addButton(self.s2t_radio)
radio_group.addButton(self.t2s_radio)
radio_layout.addWidget(self.s2t_radio)
radio_layout.addWidget(self.t2s_radio)
layout.addLayout(radio_layout)
self.input_text = QTextEdit()
layout.addWidget(self.input_text)
button_layout = QHBoxLayout()
self.convert_and_copy_button = QPushButton("转换并复制")
self.convert_and_copy_button.clicked.connect(self.convert_and_copy)
self.convert_button = QPushButton("转换")
self.convert_button.clicked.connect(self.start_conversion)
self.copy_button = QPushButton("复制结果")
self.copy_button.clicked.connect(self.copy_result)
self.copy_button.setEnabled(False)
button_layout.addWidget(self.convert_and_copy_button)
button_layout.addWidget(self.convert_button)
button_layout.addWidget(self.copy_button)
layout.addLayout(button_layout)
self.status_label = QLabel("")
self.status_label.setAlignment(Qt.AlignCenter)
layout.addWidget(self.status_label)
self.setLayout(layout)
self.setGeometry(300, 300, 500, 300)
self.setWindowTitle('中文简繁转换器')
self.setWindowFlags(self.windowFlags() | Qt.WindowStaysOnTopHint)
def initSystemTray(self):
if not QSystemTrayIcon.isSystemTrayAvailable():
print("系统托盘不可用")
return
self.tray_icon = QSystemTrayIcon(self)
if os.path.exists(ICON_FILE):
self.tray_icon.setIcon(QIcon(ICON_FILE))
else:
print(f"警告: 图标文件 {ICON_FILE} 不存在")
self.tray_icon.setIcon(self.style().standardIcon(QStyle.SP_ComputerIcon))
self.tray_icon.activated.connect(self.tray_icon_activated)
self.tray_icon.show()
def tray_icon_activated(self, reason):
if reason == QSystemTrayIcon.Trigger:
# 左键点击
if self.isVisible():
self.hide()
else:
self.show()
self.activateWindow()
elif reason == QSystemTrayIcon.Context:
# 右键点击
self.quit_application()
def start_conversion(self):
text = self.input_text.toPlainText()
if not text:
self.status_label.setText("请输入要转换的文本")
return
conversion_type = 's2t.json' if self.s2t_radio.isChecked() else 't2s.json'
self.convert_button.setEnabled(False)
self.copy_button.setEnabled(False)
self.convert_and_copy_button.setEnabled(False)
self.status_label.setText("正在转换...")
self.thread = ConversionThread(text, conversion_type)
self.thread.finished.connect(self.on_conversion_finished)
self.thread.start()
self.save_config()
def on_conversion_finished(self, result):
self.converted_text = result
self.convert_button.setEnabled(True)
self.copy_button.setEnabled(True)
self.convert_and_copy_button.setEnabled(True)
self.status_label.setText("转换完成,请点击'复制结果'按钮复制转换后的文本")
def copy_result(self):
clipboard = QApplication.clipboard()
clipboard.setText(self.converted_text, mode=QClipboard.Clipboard)
copied_text = clipboard.text()
if copied_text == self.converted_text:
self.status_label.setText("文本已成功复制到剪贴板")
else:
self.status_label.setText("复制失败,请重试")
def convert_and_copy(self):
self.start_conversion()
self.thread.finished.connect(self.copy_after_conversion)
def copy_after_conversion(self, result):
self.converted_text = result
self.copy_result()
self.thread.finished.disconnect(self.copy_after_conversion)
def closeEvent(self, event):
event.ignore()
self.hide()
def quit_application(self):
self.save_config()
QApplication.instance().quit()
if __name__ == '__main__':
app = QApplication(sys.argv)
if not QSystemTrayIcon.isSystemTrayAvailable():
print("系统托盘不可用")
sys.exit(1)
QApplication.setQuitOnLastWindowClosed(False)
converter = ChineseConverter()
sys.exit(app.exec_())
- docker desktop ( 运行 owu 与 new api)
- power toy
- beeftext
- wallpaper engine
- 长期开双萤幕 一个 27 吋 1080 一个 32 吋 2k
- f.lux
- postman engine
- discord
这样一看我背景确实好多东西啊 感觉可能是cpu扛不住了
触发场景
- 我在背景刷游戏 使用 GitHub - moesnow/March7thAssistant: 崩坏:星穹铁道全自动 三月七小助手 GitHub - DoctorReid/ZenlessZoneZero-OneDragon: 绝区零 一条龙 | 全自动 | 自动闪避 | 自动每日 | 自动空洞 | 支持手柄 , 然后做事一段时间后死机
- 玩星铁 跑了剧情 从下午4. 到晚上 10. 多 进战斗死机重开
- 绝区零 也会死机
我的想法
cpu太逊了 即使内存足够 cpu应付不了就让电脑去世
或者我有甚么奇怪的东西在电脑背景 需要重灌
能做的下一步
- 根据老友们建议优化电脑
- 配个桌机 (但是新买的笔电好浪费啊)
希望各位老友踊跃讨论
最後是可愛的kotone
Todo
顯卡驅動更新
CPU 虛焊 先備份再送回去修