If that is all you say, the command will wait until there are no processes running in the database.
You will either have to chase around manually to kill them, and this is what you want to do, if you are anxious that you may will something important.
Or you can be a little more brutal:
ALTER DATABASE Production SET SINGLE_USER WITH ROLLBACK_IMMEDIATE
This will kill all processes that has this DB as its current database, and usually returns within a couple of seconds. However, if a process is running code outside the SQL Server instance, for instance on a linked server, it will not notice that has been asked to exit.
You can cancel the command you have running. There will be no damage done.
When it comes to the corruption, keep in mind that corruption does not come out of the blue, but it often due to hardware issues or issues in the I/O subsystem. Unless you know there has been some special event that may have caused this, you should consider the current setup as tainted.