In our application, we have an RPC which may take several seconds to complete. It is practically certain that new RPCs will occur while that old one is still processing. What happens? Our desired behavior is that the new RPC will completely supplant the old one i. e. execution will transfer from the old RPC to the new one immediately. Any work that has been done by the old RPC, such as the setting of GPIO states, etc, will remain unchanged. When the new RPC finishes, control will NOT return to the old RPC, (no stacking and unstacking, and no memory leaks) but return to the OS polling loop. Is this possible?