2014-06-25 34 views
0

我在C#中新我想使用线程,因为下面的代码我想打电话给在for循环Glut.glutMainLoop();功能,但这个功能不会再回来,它停了下来。我想我可以使用thread.But但我不知道我该怎么做。或者还有其他解决方案吗?任何帮助将非常感激。如何使用线程再也没有回来功能在C#

static void Main() 
      { 

       int i; 
       ... 
       ... 
       ... 

        for (i=0 ; i<=10 ; i++) { 


        Glut.glutMainLoop(); 

       } 

      } 
+0

你怎么现在处理呢?如果它永远不会返回,你想要什么?超时? –

+0

@ImranRizvi Glut.glutMainLoop()更新控制台。如果它不被再次调用它不能更新。 – user3420549

+0

glutMainLoop并不意味着在循环中被调用。它已经为你实现了你的主循环(代表你的代码)。用GLUT注册适当的回调,不要打扰它。如果你真的需要自己的事件循环处理,请使用不同的框架(例如GLFW)。 – datenwolf

回答

1

说完看了看文档glutMainLoop,看来这个方法开始转运蛋白的消息泵。这就是为什么它永远不会回来。

在我看来,你不应该使用线程。启动Glut后,它将接管应用程序并为您处理应用程序的生命周期。

你所有的逻辑都应该进入Glut将要调用的回调函数中。请参阅:

它将根据需要调用任何已注册的回调。