3316. [tuning] Improved locking performance when recursing.
[RT #28836]
- Use one lock per memory pool instead of associating
them all with a single 'pool_lock' in the dispatch manager.
- Reduce the critical sections for qid->lock in get_dispsocket(),
deref_portentry() and dns_dispatch_addresponse2().
- Added a memory pool for socket events in dns_dispatch_t.
- Add an isc_socketevent_t member in the resquery_t object, and use
it with isc_socket_sendto2() instead of using isc_socket_sendto()
- Tuned the memory pools in dispatch.c for better performance
under load