16 | | - Ioqueue key to use lock object instead of mutex. This is required so that the lock can be synchronized with the group lock. The ioqueue key's lock can be retrieved from the active socket as well. |
17 | | - Added {{{pj_activesock_shutdown()}}} to cancel all pending operations. It is now recommended that active socket closure is done in two stages (shutdown and then destroy) to avoid race condition where the object is destroyed while callback is about to execute. |
| 16 | - New API {{{pj_ioqueue_register_sock2()}}} that takes group lock argument. The group lock would be incremented before callback is called to prevent it from being destroyed while callback is about to run. |
| 17 | - Added {{{grp_lock}}} in {{{pj_activesock_cfg}}}, to specify which group lock to use by the ioqueue key. |