Once the USR2 signal is received the master process forks, the child process inherits the parents file descriptors including listen().
One process stops accepting connections creating a queue in the kernel. The new process takes over and starts accepting connections.
You can follow the trail by searching for ngx_exec_new_binary in the nginx repo.