Articles of pipe理员

如何强制中止“glibc检测到***免费():无效指针”

在Linux环境下,当“glibc检测到*** free():invalid pointer”错误时,如何识别哪一行代码导致了这个错误? 有没有办法强制中止? 我记得有一个ENV var来控制这个? 如何在gdb中为glibc错误设置断点?

Bash:可以使用相同的input文件作为pipe道命令的输出吗?

考虑这样的事情: cat file | command > file 这是好的做法吗? 这可能会覆盖input文件,因为我们正在阅读它,或者它总是先读取内存然后pipe道到第二个命令? 显然我可以使用临时文件作为中间步骤,但我只是想知道.. t=$(mktemp) cat file | command > ${t} && mv ${t} file

命令在terminal中工作,但不通过QProcess

ifconfig | grep 'inet' 通过terminal执行时正在工作。 但不通过QProcess 我的示例代码是 QProcess p1; p1.start("ifconfig | grep 'inet'"); p1.waitForFinished(); QString output(p1.readAllStandardOutput()); textEdit->setText(output); 没有什么是显示在textedit。 但是当我在qprocess的开始只使用ifconfig时,输出显示在textedit上。 我有没有想过构build命令ifconfig | grep 'inet'任何技巧? ifconfig | grep 'inet' ,就像用' \| '和\| 为| ? 为特殊字符? 但我也试过,以及:(

我可以在Linux上做一个copy-on-write memcpy吗?

我有一些代码经常复制一大块内存,往往只做了非常小的修改。 我已经实现了一个跟踪变化的系统,但是我认为它可能是很好的,如果可能的话,告诉操作系统做一个“写入时拷贝”的内存,让它只处理这些部分的拷贝哪个变化 然而,当Linux进行写入时拷贝时,例如fork()时,我找不到控制它并自己做的方法。

内存主机和内存参数之间的关系xms和xmx来自Java

我有以下主机与内存的细节: $free -m total used free shared buffers cached Mem: 7872 7579 292 17 483 3983 -/+ buffers/cache: 3112 4759 Swap: 2047 14 2033 我有一个Java应用程序运行params -Xms200m -Xmx200m ,有人可以请解释为什么VCZ是3800076和RSS是241304(这是更多的Java参数) 从ps -aux命令: 66345 6773 0.2 2.9 3800076 241304 ? Sl Apr1 12:06 /apps/myapps/myapp1/java/bin/java -Xms200m -Xmx200m

如何在命名pipe道(mkfifo)上执行非阻塞fopen?

如果我有一个程序创build并试图使用mkfifo打开一个命名pipe道,我怎样才能打开pipe道读取或写入没有阻塞? 具体来说,我正在写一个C程序,可以使用或不使用gui(用Java编写)来运行。 在C程序中,我成功地使用mkfifo创build了命名pipe道,但是当我这样做时 FILE* in = fopen(PIPE_IN, "r"); /* Where PIPE_IN is the filename*/ 在GUI打开pipe道进行写入之前,fopen不会返回。 我希望做的是让pipe道准备被读取一次(如果)GUI决定写入它 – 我将把文件描述符放在一个select()调用中。 有理由期望java GUI可能永远不会被启动,所以我不能依靠它在任何特定点甚至根本上打开pipe道的另一端。 我也会有第二条pipe道,我想我也会遇到同样的问题。 此外,我不能在没有阅读器的输出pipe上设置O_NONBLOCK。 有什么build议么? (这是在Linux系统上运行)

是否有可能有两个由同一父(LINUX,POSIX)创build的subprocess之间的pipe道

我有多个孩子由同一个父母“分叉”,我尝试构build所有这些subprocess之间的pipe连接,如链接列表结构。 孩子1发送数据到孩子2,孩子2发送到孩子3 ….孩子N发送给孩子1.有没有什么合适的方法来做到这一点? 另外,如果我在进程之间创build和通信,我强制父进程等待所有进程完成他们的工作,因为wait()或waitpid()等待第一个完成的进程,但是我需要等待所有进程。 这是另一个问题出现。 谢谢…

IPC的性能:命名pipe道与套接字

每个人似乎都认为命名pipe道比套接字IPC更快。 他们快多less? 我更喜欢使用套接字,因为它们可以进行双向通信,而且非常灵活,但是如果数量相当多的话,它会select速度而不是灵活性。

检测Java应用程序是否作为Windowspipe理员运行

我有一个Java应用程序。 是否有无论如何,我可以告诉如果进程在Windows 7上以pipe理员权限运行。

如何使用java代码打开Windows文件浏览器并突出显示指定的文件?

我现在使用Java桌面API来操纵文件资源pipe理器。 我知道如何打开文件资源pipe理器,但我不知道如何打开它并突出显示指定的文件。 在我们使用Chrome浏览器时,下载文件后,我们可以select“在文件夹中显示”来打开文件浏览器,并突出显示下载的文件。 如何使用Java桌面API来做到这一点? 或者是否有任何其他在Java中的API可以实现这个动作?