Quelle est la différence entre atome et de la critique en OpenMP?

Quelle est la différence entre atome et de la critique en OpenMP?

Je peux faire ce

#pragma omp atomic
g_qCount++;

mais n'est-ce pas le même que

#pragma omp critical
g_qCount++;

?