Deadlock?
Hey all,
I've managed to get a bug in a plugin I'm writing that I can't really find. Basically, at some point, the server will lock and become unresponsive to the console. Is there a signal or something I can send HLDS to cause it to dump a backtrace? I can't really think of any other way to figure out where my error is. best, Buck |
Re: Deadlock?
Comment parts of code that may be related to that "some point" until you find it.
|
Re: Deadlock?
I'm making changes to a giant bit of code (War3FT), so even thinking of where it's happening is difficult. I can code c++, I'm not opposed to putting in a watchdog to see if pawn doesn't return control to AMXX in n seconds and bombing out from there.
|
Re: Deadlock?
Usually when it locks, it's because of an infinite loop, could be caused by a query or a socket problem too But most likley infinite loop.
|
Re: Deadlock?
Quote:
|
Re: Deadlock?
Any suggestions?
|
Re: Deadlock?
Quote:
Try to debug the plugin, get the error logs ( and if ur not able to fix it, post the error log and maybe also the code ) |
Re: Deadlock?
Quote:
In c, you can just run it in GDB and send a signal that will raise an exception. Then, you catch the exception, and the traceback will show you where it's stuck. Is there no similar thing in AMXX? |
Re: Deadlock?
No, there's not. The easiest way, is check all the files you edited with "while(" and make sure it looks right. Since it's not an internal error, and if you know what you edited. I'm guessing it's a while() loop, since sockets would eventually free the server. And not to many people use do() loops, so i can cancel that out.
|
| All times are GMT -4. The time now is 05:27. |
Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.