If 5 users votes for closing, that question will be closed immediately, at the same time if other users want to give answer to that question, they can’t because question is closed.
In that scenario it does not make a sense to close that question immediately.
Question should be close after 1hour.
What you don't appear to understand is that preventing other users from answering is exactly why we close questions in the first place.
If the question is bad, off-topic, subjective, or meets the criteria for any of the other close reasons, we don't want people answering those questions. They didn't belong on our site in the first place. In fact, having those questions open and answerable is actively harmful to the community. The sooner those questions get closed, the better. That prevents a bunch of bad answers from building up, in addition to bad questions. It's the classic "garbage in, garbage out" rule, and we seek to avoid that around here.
Moreover, if users start to see lots of questions remaining open that don't meet our guidelines, that creates a "broken windows" problem. It starts to look like our guidelines are meaningless, that we don't enforce them, and that you can simply ignore them when asking a question. Especially on a site as large and as active as Stack Overflow is, we simply can't stand to tolerate such a thing.
If the question is simply a duplicate, well then no harm, no foul committed in asking the question. But there's no use in keeping obvious duplicates around. Consolidating the answers all in one place makes them easier to find, both for the asker and for future guests who arrive at our site via a search engine.
Some time closing a question immediately hurts the feeling of user who has asked question.
Too bad. Why should we care about the feelings of the user who asked the question? Clearly that user didn't care enough about the site and the rest of the community members to consult the FAQ first. Hopefully next time, they'll learn to ask questions that are on-topic and contribute something positive to the community. Until then, I'll happily close their questions.
Also, closing a question is not a personal attack against the person who asked the question. It may be some form of an "attack" against the question itself, but if you can't learn to separate the two, perhaps you shouldn't be participating in an online community in the first place?
Question should be deleted instead of closing.
Closing questions is the first step to deletion. They can't be deleted until they've been closed (at least, not without requiring moderator intervention, and this shouldn't be necessary for most questions).
The other advantage of closing a question first, before deleting it, is that it gives the user who asked the question a chance to:
- See what happened to their question, without it just disappearing entirely.
- Possibly even fix their question in response to the feedback left for them in the comments and the official explanation provided for why their question was closed.
If a question is significantly improved after it is closed, it is eligible for re-opening. It only takes another 5 users (or a single moderator) who thinks the question should be re-opened to make it so. That's the same number as it takes to close a question. The system checks itself, and provides users with plenty of opportunities to help themselves.
Beyond that, I think the process works pretty darn well as is. If you happen across a question that you honestly think was closed in error, then please share a link to it here on Meta. I guarantee that myself and a number of other users will fairly re-evaluate that question, and re-open it if we agree that it was closed in error. I can honestly say that it's exceptionally rare that I ever come across such a question.