|
|
|
Ошибка в передача файла по сети в цикле по готовности
|
|||
|---|---|---|---|
|
#18+
Сервер подготавливает файлы в классе DataManager. Когда файл готов глобальная переменная этого класса выставляется в true. Основываясь на этот флажок начинается пересылка этого файла клиенту. Клиент ждет от сервера сообщения "ready", которое сообщает о начале пересылки файла. Если убрать циклы, то единожды файл пересылается нормально. Но когда код обрамлен в циклы клиент зависает в этой части кода: Код: java 1. 2. 3. 4. 5. 6. 7. LogCat показывает, что мы единожды прошли до приведенной выше части кода, потом выводит всё время System.out.println(read); и всё. Там он и сидит. Как пофиксить, подскажите пожалуйста! Вот код сервера: Это метод пересылки файла: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. Это его вызов в мэйне: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Код клиента: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2012, 11:30:33 |
|
||
|
Ошибка в передача файла по сети в цикле по готовности
|
|||
|---|---|---|---|
|
#18+
Для наглядности выкладываю скриншоты LogCat'а клиента и логи сервера: Клиент: http://imglink.ru/show-image.php?id=b083474c91f430fe29e5685696a0d6b1 Сервер: http://imglink.ru/show-image.php?id=e0844d99bce028bf83f4fe0a5747cb85 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2012, 11:50:54 |
|
||
|
Ошибка в передача файла по сети в цикле по готовности
|
|||
|---|---|---|---|
|
#18+
Mikle_kk, Клиент: Код: java 1. 2. 3. 4. 5. 6. Не будет здесь -1 никогда(если не закроешь сокет), все 'ready' и файлы пишет в bis. лучше передавать размер файла, чтобы в цикле считать нужное кол-во байтов и выйти из него, те readUTF() -> i=readInt() -> while(i>0){reab(buffer) i-read} ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2012, 12:23:15 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=37617927&tid=2132823]: |
0ms |
get settings: |
8ms |
get forum list: |
29ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
53ms |
get topic data: |
16ms |
get forum data: |
5ms |
get page messages: |
73ms |
get tp. blocked users: |
2ms |
| others: | 380ms |
| total: | 576ms |

| 0 / 0 |
