Implementations of concurrent linked list based on Coarse grained locking, fine grained locking, optimistic synchronization, lazy synchronization and non-blocking synchronization