I have a very weird issue with the taskmanager. I have installed my application on many computers without any issues, but now I have one computer (windows10 home, 64 bits, i7-7700 processor, GTX1080 GPU) that does not handle the task manager code correctly. For example:
It does not pass the taskMgr.step() code. Rendering just keeps hanging on that line.
[b]taskMgr.add(thisRenderer.RunLoop, “main task”, sort=1)
def RunLoop(self, task):
Stalls the rendering process. When I use the following line:
[b]while active == 1 : thisRenderer.RunLoop()
The process continues normally.
Does anyone have any idea what could be wrong here? It must be something specific with that computer.
I have used windows10 64 bits and the GTX1080 before and that never gave a problem. I use threading-model Cull/Draw but when I remove that, the proble still occurs.
Could you specify which versions of Panda3D you are using on each machine?
Its 1.10.0. Files are from 10-11-2015.
I checked this further:
- the installation was identical to the installation on my test computer where the problem did not occur
- the computer where this occurs is:
- windows 10 home, 64 bits, UK version
- 16.0 GB memory
- intel core i7-7700 CPU, 3.60 GHz
- GeForce GTX1080 CPU
During debugging on that computer I found that the system hangs in direct\task\task.py
The first time ‘‘step’’ is called it exits properly, but the second time its called it does everything before self.mgr.poll(), but does not continue after poll().
I tried notify-level info and debug but there were no warnings or errors. The process simply stalls at poll().
I have checked this on different computers, and it only occurs on the specific computer described above. I have installed this software also on other similar computers (windows 10 64 bits, i7-7700 CPU, GTX1080 GPU), but have never encountered it before.
So my first impression is that its specifically related to this computer, but I need to know how I can solve it. I can’t just say: take a different computer.
I also tried if it is related to multithreading (I use threading-model Cull/Draw), but when I comment that out, the problem still occurs.
Does anyone know how I can test this further or what could cause this?
The best thing to find out what’s wrong is at this point to install the debug symbols for this panda3d build (available from the devel download page, but make sure to grab the one matching your build!) run your program without threading, grab a debugger (like Visual Studio) and attach to your process when it’s hung.
Then you can break and observe the stack trace, so that we can see at which point it’s hung.