After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 589548 - MultiThread collections
MultiThread collections
Status: RESOLVED OBSOLETE
Product: libgee
Classification: Platform
Component: general
git master
Other All
: Normal enhancement
: 0.12
Assigned To: libgee-maint
libgee-maint
Depends on: 585449 646783
Blocks: 696979
 
 
Reported: 2009-07-23 21:17 UTC by Maciej (Matthew) Piechotka
Modified: 2019-03-20 10:37 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Maciej (Matthew) Piechotka 2009-07-23 21:17:43 UTC
Collections should be able to be shared across many threads. For performance reasons possibly wrappers should be created.

- Synchronized{Collection,Set,...} - Wrapper simply wrapping in mutex the operation. Probably it should support some HL atomic operations.
  - Possibly a variant with ReadWrite lock instead of full lock for heavly read collections
- CopyOnWrite{Collect,Set...}
Comment 1 Maciej (Matthew) Piechotka 2010-06-22 00:50:17 UTC
(In reply to comment #0)
> Collections should be able to be shared across many threads. For performance
> reasons possibly wrappers should be created.
> 
> - Synchronized{Collection,Set,...} - Wrapper simply wrapping in mutex the
> operation. Probably it should support some HL atomic operations.
>   - Possibly a variant with ReadWrite lock instead of full lock for heavly read
> collections
> - CopyOnWrite{Collect,Set...}

Some time ago there was discussion about using SkipListMap/SkipListSet. It would need proper volatile support in vala or preferably atomic support.
Comment 2 Maciej (Matthew) Piechotka 2011-04-05 06:49:19 UTC
Lock-free data structures are accepted into 0.7
Comment 3 Maciej (Matthew) Piechotka 2013-03-31 15:46:10 UTC
Concurrently accessable list is in 0.8, set in 0.10 and map will be in 0.12.
Comment 4 GNOME Infrastructure Team 2019-03-20 10:37:05 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to GNOME's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/libgee/issues/6.