- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的 C++ 程序挂起,我将它附加到调试器并发现此堆栈跟踪,零帧永远不会完成。这里出现问题的可能问题是什么?如果我可以收集更多信息,我仍然在调试器中保留它。还有其他线程。
#0 0xffffe410 in __kernel_vsyscall ()
#1 0x0083929b in write () from /lib/libc.so.6
#2 0x007d9cd4 in _IO_new_file_write () from /lib/libc.so.6
#3 0x007d9995 in new_do_write () from /lib/libc.so.6
#4 0x007d9c7f in _IO_new_do_write () from /lib/libc.so.6
#5 0x007da56e in _IO_new_file_overflow () from /lib/libc.so.6
#6 0x007d9b6c in _IO_new_file_xsputn () from /lib/libc.so.6
#7 0x007d012f in fwrite () from /lib/libc.so.6
#8 0x009a96f6 in ?? () from /usr/lib/libstdc++.so.6
#9 0x009ac66b in std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*) () from /usr/lib/libstdc++.so.6
#10 0x0822aa2c in printErrorMsg (format=0x848675f "#%2i %s: %s(...) %s [%p]\n") at myAssert.cpp:66
第10帧源码为:
void
printErrorMsg(const char *format, ...)
{
va_list ap;
const int size = 4096;
char buffer[size];
va_start(ap, format);
vsnprintf(buffer, size, format, ap);
va_end(ap);
std::clog << buffer;
std::cout << buffer; // Code is hung here in frame 10.
}
代码正在尝试打印堆栈跟踪。
最佳答案
问题似乎是,在通过 ssh 调用其父进程并且启动它的 ssh 连接已退出的情况下,fork() 的子进程没有有效的 cout。
解决方法是在召唤进程退出后停止使用cout。堵塞工作正常,因为它将进入由 fork()ed 子进程设置的日志文件。
关于c++ - 为什么从 write() 调用 __kernel_vsyscall() 永远不会返回?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10415514/
我得到了一个看起来与我通常得到的非常不同的内核 - 大多数线程都在 __kernel_vsyscall() 中: 9 process 11334 0xffffe410 in __kernel_v
#include #include #include #include #include #include #include #include #include #include
我正在寻找 linux 内核中用于进行系统调用的 __kernel_vsyscall 方法。我想观察它的代码以了解更多信息,但我的 grep 搜索似乎无法找到它,而且我无法在互联网上找到它的位置。任何
我正在使用 gdb 附加正在运行的进程,但是它总是停止在 __kernel_vsyscall 处。看起来它停在我的系统调用 msgrcv() 处。我必须不断“继续”它,并且不知道它什么时候可以跳出内核
我的 C++ 程序挂起,我将它附加到调试器并发现此堆栈跟踪,零帧永远不会完成。这里出现问题的可能问题是什么?如果我可以收集更多信息,我仍然在调试器中保留它。还有其他线程。 #0 0xffffe410
我的应用程序发生了严重的崩溃。 GDB 总是回溯到 __kernel_vsyscall()。调试后在源代码中没有发现任何可疑的地方。 但在 GCC 编译器中随机禁用一次“-O3”优化标志似乎可以解决问
我是一名优秀的程序员,十分优秀!