目前我了解到的是
- windows会对使用中的文件加锁, 就无法在打开文件的时候进行拷贝
- Unix 不会加文件锁, 即使打开的文件或者程序一样可以拷贝,
问题:
- 两者为何采用不同的方式处理?
- Unix 如何做到不加锁的情况下, 确保拷贝的文件和源文件一致 ? 即拷贝时候进行了修改会怎么样?

目前我了解到的是
问题:
1 seers May 29, 2015 windows也可以拷贝正在使用的文件啊? |
3 ffffwh May 29, 2015 好像unix的文件锁一直被吐槽 |
4 Tiande PRO windows/unix 修改文件,保存前是否是先在 缓冲区 修改呢? 如果是的话,那你拷贝的肯定是 源文件 而不是 正在修改的文件 喽。 类似 vim notepad++ 都是可以在修改的时候 copy 的,因为他们打开的其实只是在 缓冲区的副本。 拷贝的时候,数据要先读到内存的,一般情况下都是最后一次保存的文件版本。 如果你能在复制到内存的过程中,改变文件内容,可能会对结果有影响吧。 最后想请教 unix 是有特指啥吗? IBM? SUN? |
5 msg7086 May 29, 2015 Unix 如何做到不加锁的情况下, 确保拷贝的文件和源文件一致 ? << 并不能确保吧…… |
6 xiaosen0624 OP @dtdnqsb 没,这个我没说清楚.我指的是Mac OS |
7 xiaosen0624 OP @msg7086 那就是说我在拷贝过程中,继续进行修改,得到的结果会是两份文件不完全相同? 实际上拷贝的是修改前的文件? 这个如何测试呢? |
8 msg7086 Jun 11, 2015 @xiaosen0624 你自己做下实验就知道了。 |