|
|
|
Рациональность замены
|
|||
|---|---|---|---|
|
#18+
Всем привет. Столкнулся с ситуацией, когда один кусок кода заменили на другой, но рациональность замены я не понимаю. Старый код byte[] buf = new byte[1024]; int len; while ((len = is.read(buf)) > 0) { os.write(buf, 0, len); } Новый код byte[] buf = new byte[(int) file.length()]; is.read(buf); os.write(buf); Если кто-нибудь объяснит мне, буду благодарен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2005, 13:47 |
|
||
|
Рациональность замены
|
|||
|---|---|---|---|
|
#18+
как-то так себе получилось - - если данные длинные- то больше памяти истратится - is.read может не сразу все считать - упс (или нуна знать чего is и os из себя представляют) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2005, 15:24 |
|
||
|
Рациональность замены
|
|||
|---|---|---|---|
|
#18+
DKroshВсем привет. Столкнулся с ситуацией, когда один кусок кода заменили на другой, но рациональность замены я не понимаю. Старый код byte[] buf = new byte[1024]; int len; while ((len = is.read(buf)) > 0) { os.write(buf, 0, len); } Новый код byte[] buf = new byte[(int) file.length()]; is.read(buf); os.write(buf); Если кто-нибудь объяснит мне, буду благодарен. Ну как... Потратить больше памяти... Не работать с файлами длиньше чем Integer.MAX_VALUE байт... Но в идеале второй кусок может работать быстрее первого, т.к. меньше происходит обращений к "диску" (и не только, просто вызовы натив и синхронайзд методов по пустякам тоже не хорошее дело). Я бы предпочёл такой вариант: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2005, 16:32 |
|
||
|
Рациональность замены
|
|||
|---|---|---|---|
|
#18+
Прыгающая радость wrote: > > Я бы предпочёл такой вариант: > ...skipped... Я бы еще и уточнил в цикле чтения: Код: plaintext 1. Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2005, 16:39 |
|
||
|
Рациональность замены
|
|||
|---|---|---|---|
|
#18+
XM Я бы еще и уточнил в цикле чтения: Код: plaintext 1. Зачем? Встречались на практике ошибки с этим связанные? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2005, 17:28 |
|
||
|
Рациональность замены
|
|||
|---|---|---|---|
|
#18+
NotGonnaGetUs wrote: > Зачем? Встречались на практике ошибки с этим связанные? :) Угу, была такая фигня. Если просто > , то могло не все прочитать :) Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2005, 17:31 |
|
||
|
Рациональность замены
|
|||
|---|---|---|---|
|
#18+
Усем пасиба. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2005, 23:51 |
|
||
|
Рациональность замены
|
|||
|---|---|---|---|
|
#18+
для убыстрения нуна юзать java.nio - копирование через FileChannel.transferTo ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2005, 10:16 |
|
||
|
Рациональность замены
|
|||
|---|---|---|---|
|
#18+
(тогда в джаву может вообще ничего не копироваться и не занимать память (используются системные буферы)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2005, 10:17 |
|
||
|
Рациональность замены
|
|||
|---|---|---|---|
|
#18+
Вот так например: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2005, 11:50 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=33270431&tid=2151492]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
145ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
28ms |
get tp. blocked users: |
1ms |
| others: | 236ms |
| total: | 443ms |

| 0 / 0 |
