On Fri, Feb 4, 2011 at 11:41 AM, Thiago Macieira <thi...@kde.org> wrote: > Em sexta-feira, 4 de fevereiro de 2011, às 05:24:26, Dawit A escreveu: >> > In the meantime, I've been discussing with Rémi about the issue and he's >> > not budging from his position that libraries shoul >> > never use Unix signals. To be >> > honest, he's right: Unix signals are meant to be used centrally only. >> > But we need SIGCHLD to be notified that a child exited, so we need a >> > compromise between apps and libraries. >> >> That is especially true for QProcess. It is used in several place >> within kdelibs. If any of those code paths are hit from an app like >> VLC, the same issue will manifest itself as well. I am still wondering >> whether or not the QtCreator freeze I get to this day is somehow >> related to this issue even though I doubt QtCreator does any signal >> blocking... > > Qt workaround patch. > > I will most definitely not add this to 4.7. I will show to other engineers in > the office and we'll consider 4.8. > > http://qt.pastebin.com/U6dF8kzd
BTW, there is one side issue I noticed in QProcess through this whole process. Why does QProcess not exit immediately if I invoke kill or terminate or even when it just timed out from waiting for the child process ? IOW, why wait some more for the child process to exit under those circumstances ? That is what unnecessarily prolongs or even doubles the blocking period.