Screwbolt Wait Chain

Here we introduce another Wait Chain (Volume 1, page 482) pattern where a client thread makes a request and a created server thread servicing the request makes another request to the client which creates a new client thread to service the server request. The new client thread makes a request to the server again and a new server thread is created which makes a new client request, and so on. The additional signs here may be an abnormal number of threads and possibly Handle Leak (page 164) pattern although the latter may be present only in a client or server process only. Thread Age (Volume 6, page 111), Waiting Thread Time (Volume 1, page 343), and common Blocking Module (Volume 6, page 54) patterns may be used to unwind the chain and diagnose the possible problem module and corresponding Module Product Process (page 189). The pattern is illustrated on this diagram:

images

Although we initially found this pattern related to LPC /ALPC IPC (Volume 3, page 97) we think it is not limited to it and can occur in different client-server communication implementations.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset