"scheduling-1" #41 prio=5 os_prio=0 tid=0x00007f4e9a4ae800 nid=0x5177 runnable [0x00007f4de2df1000] java.lang.Thread.State:RUNNABLE at java.net.SocketInputStream.socketRead0(Native Method) at java.net.SocketInputStream.socketRead(SocketInputstream.java:116) at java.net.SocketInputStream.read(SocketInputstream.java:171) at java.net.SocketInputStream.read(SocketInputStream.java:141) atcommysq1.ci.protocolReadAheadInputStream.fill(ReadAheadInputStream.java:107) at com.mysq1.cj.protocol.ReadAheadInputStream.readFromUnderlyingStreamIfNecessary(ReadAheadInputStream.java:150) at com.mysql.cjprotocol.ReadAheadInputStream.read(ReadAheadInputStream.java:180)
时间: 2023-10-25 08:55:20 浏览: 44
这个线程堆栈信息显示该线程正在执行 MySQL 数据库的操作,但是操作被阻塞,该线程处于可运行状态(RUNNABLE),但并未获得 CPU 时间片。堆栈信息中显示该线程在执行 Socket 相关的操作,可能是在与 MySQL 数据库建立连接或者执行 SQL 操作时出现了阻塞,需要等待网络 IO 完成才能继续执行。此时需要进一步排查 MySQL 数据库的状态和性能,以及网络连接的情况,来定位问题的具体原因。可能需要检查 MySQL 数据库的连接池配置、网络带宽、硬件资源等方面的情况。
相关问题
scheduling_list = scheduling_list.append(0) AttributeError: 'int' object has no attribute 'append'
这个错误的原因是你尝试将一个整数值(0)添加到一个整数对象(scheduling_list)中。整数类型是不可变类型,没有append()方法,因此你需要将scheduling_list定义为一个可以进行添加操作的可变类型,例如列表(list)或数组(array),然后再执行append()方法。请注意,你应该将scheduling_list定义为一个列表或数组,而不是一个整数。以下是一个示例代码:
```
scheduling_list = []
scheduling_list.append(0)
```
这将创建一个空列表,然后将0添加到列表中。
if (chg->connector_type == POWER_SUPPLY_CONNECTOR_MICRO_USB) { cancel_delayed_work_sync(&chg->uusb_otg_work); vote(chg->awake_votable, OTG_DELAY_VOTER, true, 0); smblib_dbg(chg, PR_INTERRUPT, "Scheduling OTG work\n"); schedule_delayed_work(&chg->uusb_otg_work, msecs_to_jiffies(chg->otg_delay_ms)); return IRQ_HANDLED; }代码解析
这段代码是在处理 USB Type-C 接口插拔事件时,如果检测到当前连接的是 Micro USB 接口,则会执行以下操作:
1. 取消之前已经注册的 uusb_otg_work 延迟工作,以便重新调度新的 uusb_otg_work 延迟工作。
2. 向 awake_votable 投票,以避免系统进入睡眠状态。
3. 输出调试信息,表示即将调度新的 OTG 延迟工作。
4. 调度新的 uusb_otg_work 延迟工作,延迟时间为 `chg->otg_delay_ms`,也就是 OTG 延迟工作的执行时间。
5. 返回 IRQ_HANDLED,表示中断已经被处理。
需要注意的是,`chg` 是指向 `struct smb_charger` 结构体的指针,其中包含了电池驱动的一些信息和状态,如 connector_type 表示当前连接的 USB 接口类型,otg_delay_ms 表示 OTG 延迟工作的执行时间等。另外,uusb_otg_work 是一个延迟工作,用于在 Micro USB 接口插入一段时间后,判断是否需要进入 OTG 模式。