public static void render() { //if (log.DebugEnabled) { Console.WriteLine(string.Format("ExternalGE starting rendering")); } for (int i = 0; i < rendererThreads.Length; i++) { rendererThreads[i].sync(rendererThreadsDone); } try { //if (log.DebugEnabled) { Console.WriteLine(string.Format("Waiting for async rendering completion")); } rendererThreadsDone.acquire(rendererThreads.Length); } catch (InterruptedException e) { Console.WriteLine("render", e); } //if (log.DebugEnabled) { Console.WriteLine(string.Format("Async rendering completion")); } NativeUtils.rendererTerminate(); //if (log.DebugEnabled) { Console.WriteLine(string.Format("ExternalGE terminating rendering")); } }