Если в коде используется `threading.Lock`, но потоки всё равно блокируют друг друга, что может быть причиной?