|
Асинхронные named pipes
|
|||
---|---|---|---|
#18+
вот здесь углядел пример соединения named pipes. все тут понятно.но както нехорошо оставлять серверное приложение в ожидание коннекта навсегда, если клиенту так и не потребуется сервер. После комманды m.res = ConnectNamedPipe(pipehnd, 0) оно снимается только диспедчером задач. вычитал про асинхронный режим без ожидания написл такой код сервера: Код: plaintext 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. 63. 64. 65. 66. 67. 68.
зависания не происходит , но получаю ошибку ERROR_INVALID_HANDLE. вероятно как то не так создал я эту структуру OVERLAPPED. подскажите, пожалуйста, как этот указатель пристроить в строку структуры? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2009, 14:23 |
|
Асинхронные named pipes
|
|||
---|---|---|---|
#18+
ну структура то создана у меня была правильно, а ошибочка в создании трубки правильный вызов такой Код: plaintext 1.
теберь бы после запуска неблокирующего ожидания коннекта Код: plaintext
догадываюсь что как то надо оценить состояния созданного события или структуры Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8.
подскажите? пожалуйста функции api работы с событиями ... |
|||
:
Нравится:
Не нравится:
|
|||
25.09.2009, 09:49 |
|
Асинхронные named pipes
|
|||
---|---|---|---|
#18+
ну вот есть кое какой рабочий вариант (см приложенный архив) есть сервер и клиент запускаешь сервер - он крутит цикл (может при этом сделать что-то свое) запускаешь клиента - передача, прием выполнены это все работает только при условии что в сервере есть команда wait window timeout 0.1 без нее тоже работает, только если окно фокса (в котором запущен сервер) активно или на него наведен указатель мыши. полагаю что это какието сложности с многопотоковостью способы _VFP.AutoYield = .t./.f. и doevents результата не дают чем можно объяснить этот феномен? как бы всетаки обойтись без wait window timeout 0.1 ? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2009, 15:58 |
|
|
start [/forum/topic.php?fid=41&msg=36216544&tid=1586019]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
others: | 17ms |
total: | 135ms |
0 / 0 |