张 张无忌 Unregistered / Unconfirmed GUEST, unregistred user! 2003-09-30 #21 用楼上的代码串行化了所有操作,和单线程有什么区别了? 这样的话比单线程还慢,楼主的代码出问题的原因很简单, 他没有认真看帮助。
E estorm Unregistered / Unconfirmed GUEST, unregistred user! 2003-09-30 #22 呵呵这是理论算法,在实际使用的时候可以在read 和 write 之间加上sleep(0),这样在各个线程执行的时候就可以互相串行执行了,下面对举例说明,假设有2个线程(t1,t2) 1。未用sleep的时候可能的操作序列为:t1读->t1写->t1读->t1写->t2读->t2写->... 2。用sleep后可能为:t1读->t2读->t1写->t2写->t1写->t2读->...
呵呵这是理论算法,在实际使用的时候可以在read 和 write 之间加上sleep(0),这样在各个线程执行的时候就可以互相串行执行了,下面对举例说明,假设有2个线程(t1,t2) 1。未用sleep的时候可能的操作序列为:t1读->t1写->t1读->t1写->t2读->t2写->... 2。用sleep后可能为:t1读->t2读->t1写->t2写->t1写->t2读->...
E estorm Unregistered / Unconfirmed GUEST, unregistred user! 2003-09-30 #23 打错了,2影如下: 2。用sleep后可能为:t1读->t2读->t1写->t1读->t2写->t1写->...
【 【小高】 Unregistered / Unconfirmed GUEST, unregistred user! 2003-10-03 #24 我很同意张无忌的说法! 其实很简单,根本不用想什么程序! 大家可以去试一下,找几个大的文件,如VCD文件文件,或者更大的文件(>100M) 你在WINDOWS里面先拷贝一个文件粘贴到别的盘,这个文件还没有拷贝完成,再拷贝 另外一个文件再粘贴,多做几次就好比开多个线程。 这样的结果你知道吗?你的机器会变得很慢,拷贝文件的时间绝对不会比一次性拷贝多个文件(单线程)再粘贴少,只会多! 我这里天天要拷贝上千G的VCD,DVD文件,不管用GHOST也好,还是直接拷贝也好,一般的 机器是120G/小时。硬盘I/O速度有很大关系! 如果哪位能有好的技术提高拷贝速度,还请多指教!
我很同意张无忌的说法! 其实很简单,根本不用想什么程序! 大家可以去试一下,找几个大的文件,如VCD文件文件,或者更大的文件(>100M) 你在WINDOWS里面先拷贝一个文件粘贴到别的盘,这个文件还没有拷贝完成,再拷贝 另外一个文件再粘贴,多做几次就好比开多个线程。 这样的结果你知道吗?你的机器会变得很慢,拷贝文件的时间绝对不会比一次性拷贝多个文件(单线程)再粘贴少,只会多! 我这里天天要拷贝上千G的VCD,DVD文件,不管用GHOST也好,还是直接拷贝也好,一般的 机器是120G/小时。硬盘I/O速度有很大关系! 如果哪位能有好的技术提高拷贝速度,还请多指教!
J jjqqw Unregistered / Unconfirmed GUEST, unregistred user! 2003-10-03 #25 to:shbjkl src:=tfilestream.Create(o1.FileName,fmOpenRead );中 src是什么东东?