check_func()というアドホックっぽい関数名が誤解のもとかな
get条件atomically()にすれば意図が明白