[Ecls-list] hash-table implicit mp:lock

Matthew Mondor mm_lists at pulsar-zone.net
Sun Jul 31 19:34:07 UTC 2011


On Sun, 31 Jul 2011 15:27:36 +0200
Juan Jose Garcia-Ripoll <juanjose.garciaripoll at googlemail.com> wrote:

> On Thu, Jul 28, 2011 at 2:08 PM, Matthew Mondor <mm_lists at pulsar-zone.net>wrote:
> 
> > I noticed that ECL hash tables are automatically thread-synchronized
> > using a lock.  I was wondering if this was inspired from other
> > implementations?  Or does ECL itself need this other than for package
> > hash tables?
> >
> 
> I finally found some time to commit this. Hash tables, just like other
> objects (arrays, lists, structures) are no longer implicitly locked. It is
> the user's responsibility to ensure consistency of them all using locks,
> mutexes or whatever other means he wishes to.

I reviewed the changes and afterwards gave HEAD ECL a test;

When doing tests with SLIME the following was caught:

lsp/trace.lsp:277:       (*step-functions* (make-hash-table :size 128 :test 'eq :lockable t)))

I also noticed in the same grep:

c/symbols_list.h:1371:{KEY_ "LOCKABLE", KEYWORD, NULL, -1, OBJNULL},
c/symbols_list2.h:1371:{KEY_ "LOCKABLE",NULL},

Thanks,
-- 
Matt




More information about the ecl-devel mailing list