Team LiB
Previous Section Next Section

Asserts with Remote Objects

Objects running on remote machines also present a problem for asserts. Normally, an assert pops up on the screen of the computer where that code is running. But if you invoke code on a remote server and if that code asserts, then the remote code will be stuck waiting on someone to acknowledge the assert. Meanwhile, the code running on your local machine will be stuck waiting on a response from the remote machine, and that response may never come. If the assert were displayed on your local machine instead of the remote machine, then you could acknowledge it; or if you had a coworker monitoring the remote machine, then he could acknowledge it. But without that, the system will be hung.

During development, the "remote" machine will often be in the same building as the local machine. If so, then this problem may be tolerable. Anytime your program takes an inordinate amount of time returning from a function call to the remote object, check the remote machine to see if it's caught in an assert. However, if you don't have easy access to the remote machine, then you will likely have problems including asserts in the remote object code. Watch out for this problem when using remote objects.


Team LiB
Previous Section Next Section