The stupid question is the question not asked | |
PerlMonks |
Re: How to share huge data structure between threads?by PodMaster (Abbot) |
on Jan 10, 2003 at 14:53 UTC ( [id://225805]=note: print w/replies, xml ) | Need Help?? |
Yes and no.
DB_File.pm is not thread safe. Neither is BerkleyDB.pm The strategy with DB_File is to blessed(%hash)->flush after writing, and to retie before reading to ensure you got the latest data. This will work fine but only if you use a newer version of BerkleyDB (anything about 2.5 will work fine with this technique). If you want better transaction control, use BerkeleyDB.pm, and you got access to the full api (just go buck wild). You other choice to consider is DBD::SQLite. If any of this is too slow for you, you can always use Cache::Cache
In Section
Seekers of Perl Wisdom
|
|