Opened 10 years ago

Closed 10 years ago

#140 closed enhancement (fixed)

Weak hash table support

Reported by: ehuelsmann Owned by: Mark Evenson
Priority: major Milestone:
Component: other Version:
Keywords: Cc:
Parent Tickets:

Description

In order to allow trivial-garbage to implement support for ABCL, we need to provide weak hash table support.

Change History (5)

comment:1 Changed 10 years ago by Mark Evenson

Is there some obvious reason why a wrapping of the built-in Java constructs of WeakHashMap and WeakReference wouldn't suffice here?

comment:2 Changed 10 years ago by ehuelsmann

Yes: Our own hashes support concurrent readers and a single writer. That's better than WeakHashMap?, which doesn't support concurrency at all. Also, trivial-garbage would like to provide support for hashes which allow for weak keys as well as weak values.

At the same time, our own hashes support EQ, EQL, EQUAL and EQUALP hash equality. BTW: The fact that this ticket exists doesn't mean it will take ages to implement: we probably need to copy the file which currently defines our hashes, make the bucket class abstract and define accessors to the keys and values - instead of accessing them directly as our hash source does now.

comment:3 Changed 10 years ago by Mark Evenson

Unsure about concurrent readers in the current implementation: wouldn't the EQUALP method on a HashTable? would fail if its first argument was being modified?

comment:4 Changed 10 years ago by Mark Evenson

Owner: changed from somebody to Mark Evenson
Status: newassigned

comment:5 Changed 10 years ago by Mark Evenson

Resolution: fixed
Status: assignedclosed

Completed with r13309 and r13310.

Note: See TracTickets for help on using tickets.