Author: Wladimir 2012-06-16 07:04:34
Published on: 2012-06-16T07:04:34+00:00
In a forum post from 2012, a user named grarpamp raised an issue with bitcoind not responding to certain rpc queries and signals. They suggested that the program should check and process all user interrupts once per block and do the chain in the background. However, Wladimir, another user, responded explaining that this has nothing to do with priority or user interrupts but with the locks on the wallet and client. Every RPC command takes both locks, and releases them only when finished. Shutting down also requires both locks, so the operations will be serialized. This is done to protect the database and critical data structures. While there may be some cases where the locks are not necessary or read/write locks could be used instead for improved concurrency, caution must be exercised in implementing such changes.
Updated on: 2023-06-06T05:23:27.741603+00:00