Depende se seus
users
tabela é MyISAM ou InnoDB. Se for MyISAM, uma instrução ou outra bloqueia a tabela, e há pouco que você possa fazer para controlar isso, exceto bloqueio de tabelas você mesma.
Se for InnoDB, é baseado em transações. A arquitetura de várias versões permite acesso simultâneo à tabela e o
SELECT
verá a contagem de linhas a partir do instante em que sua transação foi iniciada. Se houver um INSERT
acontecendo simultaneamente, o SELECT
verá 0 linhas. Na verdade, você pode até ver 0 linhas por um SELECT
executado alguns segundos depois, se a transação para o INSERT
ainda não se comprometeu. Não há como as duas transações começarem verdadeiramente simultaneamente. As transações são garantidas para ter alguma ordem.