I still don't think we can use a LinkedList here.  If it is possible for multiple threads to call emit with the same key concurrently, then we need a concurrent structure or some kind of synchronization to guarantee consistency.  2 concurrent adds could for example lose an update.