I've played with threads a bit to avoid the
blocking of lyx while texing.

My very first shot looks like this:


Index: src/support/Systemcall.cpp
===================================================================
--- src/support/Systemcall.cpp  (revision 18346)
+++ src/support/Systemcall.cpp  (working copy)
@@ -13,11 +13,15 @@

 #include <config.h>

+#undef BOOST_DISABLE_THREADS
 #include "support/Systemcall.h"
 #include "support/os.h"

 #include <cstdlib>

+#include <boost/bind.hpp>
+#include <boost/thread/thread.hpp>
+
 using std::string;

 #ifndef CXX_GLOBAL_CSTD
@@ -43,6 +47,8 @@
                }
        }

+       boost::thread thrd(boost::bind(&::system, command.c_str()));
+       return 0;
        return ::system(command.c_str());
 }

(On windows on each call a cmd is created but not closed.)

If someone is interested I could post the diff (bz2, 40kB)
with the boost thread files and the fixed cmake files.

Peter

Reply via email to