Virtu Financial Interview Question

How do i design a Lock implementation