From: Miklos S. <mi...@sz...> - 2007-03-28 10:02:29
|
> > In general , if I have a global variable defined and > > some of my function (ex. my_write, my_open) performs operations on it, > > modifies it, > > can that cause trouble somehow ? > > > > Or fuse handles all the locking automatically to be thread safe ? > > > > Is there any case when the user defined functions (_open, _close, etc) > > are calles paralelly ? > > Hi, Gergely. I recently had the same question. The thread is here: > > --> http://thread.gmane.org/gmane.comp.file-systems.fuse.devel/4271 > > The short answer is: if you're writing a single-threaded filesystem > (which could have severe performance implications), then you can store > info in global variables. If you're writing a multithreaded > filesystem, then you need to manage your own thread-local storage to > avoid corruption. Or maybe you just want to protect access to global variables with a mutex. Miklos |