打破砂锅问到底,Close()和Dispose()的深入理解
网上查看了很多资料,有几个疑惑:
前提:
Close 是停业整顿,停业了,可以通过公关,再重开,物还是原来的物;只是关闭而已,没有释放真正的释放资源,可以重新打开;
Dispose 是炸毁,炸毁了,想再开张,就只有重头建起;是把对象销毁,将不再存在;
问题1、什么地方会这么用?比如新闻的显示页,我是用DataReader这个SqlConnection 先Open(),然后再Close();
这个地方到底我是用Close还是Dispose;还是两个一起用(先用Close再接着加Dispose)。
问题2、我打开了新闻的显示页后,可能第二天可能我还要打开,或者还有很多人也可能同时在看这条新闻,那么到底我是Close还是Dispose?我这里用Close有什么好处,要是用Dispose有什么用?是不是我Dispose炸毁了,第二天后我就不能打开这条新闻了?
问题3、实际一点(理论就不必多说了),哪些场合需要Close? 哪些场合需要Dispose?或者是哪些场合必须两者都要?
最好能举例子说明