Use a gen_server.