Shouldn't we get the initial value after connecting the signal handler, to avoid a race (we get, value changes, we hook signal)