Why does the system become slow if I perform lengthy operations in the OpenFile, CreateFile, or CloseFile events?


CBFS Connect processes requests in several threads in parallel to allow you to achieve optimal performance. However, the creation and closing of the files requires access to certain filesystem-wide structures and resources, and thus cannot be performed from several threads at the same time. So a global lock is used to serialize access to those resources during such operations.

So while your OpenFile, CreateFile, or CloseFile event handler is executing, all other attempts to create/open/close other files will be blocked. This is why it's critical for your application to handle the aforementioned events as quickly as possible.

We appreciate your feedback. If you have any questions, comments, or suggestions about this article please contact our support team at support@callback.com.