2012-03-06 10 views
5

Ứng dụng của tôi đột ngột ngừng hoạt động. và tôi thực hiện COMAND sau,Điều gì có nghĩa là futex_?

#ps -elf | grep aeroServ 

và Got đầu ra sau đây,

#0 S binunun 5634 2300 0 80 0 - 7781 futex_ 15:41 pts/0 00:00:04 

gì tôi có thể có thể cảm nhận được rằng, ứng dụng không hoạt động, nhưng tôi không hiểu được rõ quá trình này là hiện nay. Ai đó có thể vui lòng giải thích.

Trả lời

6

Đó là cột WCHAN của đầu ra ps.

Như man page nói:

nwchanWCHAN địa chỉ của hàm kernel nơi quá trình này đang ngủ (sử dụng wchan nếu bạn muốn tên hàm kernel). Các tác vụ đang chạy sẽ hiển thị dấu gạch ngang ('-') trong cột này.

Vì vậy, quá trình của bạn bị chặn trên hạt nhân gọi futex_* (các cuộc gọi này có liên quan đến khóa/mở khóa mutex và các nguyên tắc đồng bộ hóa khác). Tại sao bị chặn ở đó, chỉ bạn mới có thể biết bằng cách kiểm tra mã của bạn và/hoặc sử dụng trình gỡ lỗi.

(Xem Futex để biết thông tin về futexes.)