There is a very small possibility that the weak reference could be set to null between checking it for null and checking IsAlive, take a copy first