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