[Feedback on issues] 出现窗口假死怎么办
Tofloor
poster avatar
157******96
deepin
4 hours ago
Author

电脑配置:华为Matebook 14s 2022款笔记本,CPU为Intel core® i5-12500H,16GRAM+512G硬盘,系统为Deepin V25(25.0.10社区版)+Windows10 22H2(自己极限精简的版本,在安装部署阶段禁用了一堆的Windows相关的自带组件)

问题描述:电脑在运行某个软件的时候,不管是Windows还是Linux软件,会有那么一段时间出现窗口假死的现象,这种现象多发生于当我退出某一个最大化窗口之时,当我退出某一个最大化的窗口的时候,想要去控制其他的窗口,那么这个窗口就会有极大概率出现假死,无法进行任何点击操作,只能够通过敲击ESC按键之后才能够继续操作,就算是敲击了ESC按键,那么也会出现窗口可以进行点击,但是无法拖动现象。且第二种现象的出现包含我说的退出某一个最大化窗口,和单纯的挂在桌面上久了之后的情况。那么请教一下社区的各位大佬,我这边的话要怎么处理,是通过在终端输入什么指令还是说别的操作才能够继续运行?

Reply Favorite View the author
All Replies
我是昵称
deepin
3 hours ago
#1

用QQ了吗,版本是哪个?感觉跟我遇到的应用x11连接泄漏问题有点类似。

Reply View the author
157******96
deepin
an hour ago
#2
我是昵称

用QQ了吗,版本是哪个?感觉跟我遇到的应用x11连接泄漏问题有点类似。

用了,而且还有一种情况就是,有的时候我不用QQ也会出现这样子的问题,很烦

Reply View the author
157******96
deepin
an hour ago
#3
我是昵称

用QQ了吗,版本是哪个?感觉跟我遇到的应用x11连接泄漏问题有点类似。

image.png

Reply View the author
我是昵称
deepin
21 minutes ago
#4
#!/bin/bash

echo "1. 查找所有与 X11-unix 相关的连接:"
ss -p | grep X11-unix

echo
echo "2. 统计每个进程的连接数量:"

# 提取所有本地端口号
ports=$(ss -p | grep X11-unix | awk '{print $6}' | sed 's/.*://')

declare -A pid_count

for port in $ports; do
    # 查找连接到该显示端口的进程
    while IFS= read -r line; do
        # 提取PID
        pid=$(grep -o 'pid=[0-9]*' <<<"$line" | head -n1 | cut -d= -f2)
        [ -z "$pid" ] && continue
    
        # 获取进程名(更可靠的方式)
        pname=$(ps -p "$pid" -o comm= 2>/dev/null | tr -d '\n')
        [ -z "$pname" ] && pname="unknown"
    
        # 统计
        key="$pid:$pname"
        ((pid_count["$key"]++))
    done < <(ss -p | grep "$port " | grep -v X11-unix)
done

# 计算总连接数
total_connections=0
for count in "${pid_count[@]}"; do
    ((total_connections += count))
done

echo "总连接数: $total_connections"
echo

# 按连接数从高到低排列输出统计结果
echo "各进程连接数统计(按连接数从高到低排列):"
for key in "${!pid_count[@]}"; do
    echo "${pid_count[$key]} $key"
done | sort -nr | while read count key; do
    echo "进程: $key, 连接数: $count"
done

echo
echo "总结:"
echo "- 总进程数: ${#pid_count[@]}"
echo "- 总连接数: $total_connections" 


#sudo ss -x src "*/tmp/.X11-unix/*"| grep -Eo "[0-9]+\s*$" | while read port
#do sudo ss -p -x | grep -w $port | grep -v X11-unix
#done | grep -Eo '".+"' | sort | uniq -c | sort -rn

#sudo ss -x src "*/tmp/.X11-unix/*"| grep -Eo "[0-9]+\s*$" | while read port; do sudo ss -p -x | grep -w $port | grep -v X11-unix; done | grep -Eo '".+"' | sort | uniq -c | sort -rn

终端运行下这个脚本,看是不是有应用泄露了x11连接

Reply View the author