Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #3876

Re: Concurrent bidirectional one-to-many map?

From Sebastian <sebastian@undisclosed.invalid>
Newsgroups comp.lang.java.programmer
Subject Re: Concurrent bidirectional one-to-many map?
Date 2011-05-09 22:57 +0200
Organization albasani.net
Message-ID <iq9kf7$fr1$1@news.albasani.net> (permalink)
References (2 earlier) <iq348b$iv1$1@news.albasani.net> <nsadnUZcjoF01ljQnZ2dnUVZ_gednZ2d@earthlink.com> <alpine.DEB.2.00.1105080428540.28763@urchin.earth.li> <08586289-8935-4532-93d0-e8c7dd45cb24@c1g2000yqe.googlegroups.com> <alpine.DEB.2.00.1105091825310.18864@urchin.earth.li>

Show all headers | View raw


Am 09.05.2011 19:28, schrieb Tom Anderson:
> On Mon, 9 May 2011, Robert Klemme wrote:
>
>> On 8 Mai, 05:51, Tom Anderson <t...@urchin.earth.li> wrote:
>>>> On 5/7/2011 2:43 AM, Sebastian wrote:
>>>> ...
>>>>> To give an example, I'm trying to solve a problem like this:
>>>>> Associate tasks with workspaces, where a workspace may hold many
>>>>> tasks,but a task may be associate with at most one workspace.
>>>> ...
>>
>> This could be solved by standard relationship implementations: Make
>> workspace a member of Task and synchronize accesses on Task. Example:
>>
>> https://gist.github.com/962538
>>
>> By using monitors of Task and Workspace we have quite fine granularity
>> of locking.
>
> True! The fastest map is no map at all.
>
> If the OP can't modify Task or Workspace, perhaps he could consider
> writing wrappers which refer to each other, a TaskWithWorkspace, and
> WorkspaceWithTasks (perhaps with better names), and passing those around
> rather than plain Tasks and Workspaces.
>
> tom

I can't modify Task, or Workspace, and I won't do much "passing around"
either, as I'm writing a component that will be called remotely (over
RMI). But I suppose I could create a wrapper object for each
Item/Workspace on the first call and look them up in maps indexed on
the Item/Workspace id. Now I wonder if I just have shifted the problem
to these maps?

I'll have to brush up on "monitors" and look at the example.

As for access patterns, that will depend on worker behavior. If they are
well-behaved, they won't competemuch for tasks and finish them quickly, 
so I'd hope for about as many writes as reads.

-- Sebastian

Back to comp.lang.java.programmer | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Concurrent bidirectional one-to-many map? Sebastian <sebastian@undisclosed.invalid> - 2011-05-06 22:07 +0200
  Re: Concurrent bidirectional one-to-many map? markspace <-@.> - 2011-05-06 13:45 -0700
    Re: Concurrent bidirectional one-to-many map? Sebastian <sebastian@undisclosed.invalid> - 2011-05-07 11:43 +0200
      Re: Concurrent bidirectional one-to-many map? Lew <noone@lewscanon.com> - 2011-05-07 07:59 -0400
        Re: Concurrent bidirectional one-to-many map? Lew <noone@lewscanon.com> - 2011-05-07 12:49 -0400
          Re: Concurrent bidirectional one-to-many map? Sebastian <sebastian@undisclosed.invalid> - 2011-05-07 21:34 +0200
      Re: Concurrent bidirectional one-to-many map? Patricia Shanahan <pats@acm.org> - 2011-05-07 06:40 -0700
        Re: Concurrent bidirectional one-to-many map? Tom Anderson <twic@urchin.earth.li> - 2011-05-08 04:51 +0100
          Re: Concurrent bidirectional one-to-many map? Robert Klemme <shortcutter@googlemail.com> - 2011-05-09 06:43 -0700
            Re: Concurrent bidirectional one-to-many map? Tom Anderson <twic@urchin.earth.li> - 2011-05-09 18:28 +0100
              Re: Concurrent bidirectional one-to-many map? Sebastian <sebastian@undisclosed.invalid> - 2011-05-09 22:57 +0200
                Re: Concurrent bidirectional one-to-many map? Lew <noone@lewscanon.com> - 2011-05-09 18:36 -0400
                Re: Concurrent bidirectional one-to-many map? Tom Anderson <twic@urchin.earth.li> - 2011-05-10 08:34 +0100
                Re: Concurrent bidirectional one-to-many map? Sebastian <sebastian@undisclosed.invalid> - 2011-05-11 10:09 +0200
                Re: Concurrent bidirectional one-to-many map? Sebastian <sebastian@undisclosed.invalid> - 2011-05-11 10:51 +0200
                Re: Concurrent bidirectional one-to-many map? Robert Klemme <shortcutter@googlemail.com> - 2011-05-11 04:55 -0700
                Re: Concurrent bidirectional one-to-many map? Lew <noone@lewscanon.com> - 2011-05-11 09:00 -0400
                Re: Concurrent bidirectional one-to-many map? Sebastian <sebastian@undisclosed.invalid> - 2011-05-11 20:47 +0200
      Re: Concurrent bidirectional one-to-many map? markspace <-@.> - 2011-05-07 09:35 -0700
      Re: Concurrent bidirectional one-to-many map? Michal Kleczek <kleku75@gmail.com> - 2011-05-09 16:42 +0200
  Re: Concurrent bidirectional one-to-many map? Roedy Green <see_website@mindprod.com.invalid> - 2011-05-07 03:46 -0700

csiph-web