Singleton Pattern: Part 3 Double Checked Locking
Singleton Pattern: Part 2 Thread-Safe implemenation
We looked into a trivial implementation of the singleton pattern in the previous post. The implementation was both lazy and non-thread safe. It’s lazy, because the singleton instance is created only when it’s required. The implementation was also not thread safe. So, if several calls were made into this method from a multi-threaded program, you could end up creating multiple instances of the class, and also mess up seriously since the system expects to have only one instance.
Singleton Pattern: Part 1 Trivial implemenation
The purpose of a singleton pattern is to ensure a unique instance of the class and to provide global access to this. It falls under the Creational patterns category.
The class implementing the singleton pattern will have to do the following items: