| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > :) Общий файл в общей папке локальной сети... |
| Автор: PostEr 25.7.2003, 12:54 |
| Мне нужно, чтобы работало 2 приложения, открывающих и закрывающих один и тот же файл, с БОЛЬШОЙ частотой. То есть порядка 20 открытий для записи (первая прога) и 20 открытий для чтения (работает вторая прога) в СЕКУНДУ. Вроде сделал, и всё работает. Компы соединил без хаба, а напрямую, скорость 10мбит\с. Передаётся порядка 100 байт при каждом обращении, так что скорость нужна около всего 16кбод, но тормоза идут страшные %( Чё делать? Обязательно, чтобы взаимодествие было только через файл |
| Автор: <Spawn> 25.7.2003, 14:32 |
| Тормоза в системе или в твоей программе? |
| Автор: PostEr 25.7.2003, 18:27 |
| А я и не знаю, но не в системе . То есть в проге, да! |
| Автор: Vit 26.7.2003, 07:13 |
| Вообщето именно для этого случая сервера баз данных придумывали... |
| Автор: PostEr 27.7.2003, 07:37 |
| да куда мне базы данных??? Я на сервер хочу сам перейти, но просто проект нужно предъявлять уже, а у меня сам праблемс. |
| Автор: <Spawn> 27.7.2003, 10:57 |
| Если тормоза в программе, то тогда попробуй код открытия/закрытия файлов перенести в отдельный поток. |
| Автор: Medved 27.7.2003, 18:50 | ||
Лучше переделай на БД. В любом случае ранее или поздно это придется делать. |
| Автор: PostEr 27.7.2003, 20:02 |
| Pegas <Spawn> А поток как выделить? |
| Автор: Medved 28.7.2003, 02:05 | ||
А для чего у тебя два приложения открывают с такой частотой файл? |
| Автор: <Spawn> 28.7.2003, 05:31 | ||||
File>New>Other>Thread Object .В OnExecute помещяешь свой код. Затем из своего приложения делаешь что то типа этого:
|
| Автор: Vit 28.7.2003, 06:35 | ||
Объясни подробнее что ты делаешь, попробуем подумать, но это в 99% это именно та ситуация где скорее всего надо применять сервер баз данных... Если напишешь что да зачем попробуем объяснить как это реализовать... |
| Автор: PostEr 28.7.2003, 15:33 |
| Прикольно Мне было нужно (нужно) , чтобы 2 приложения системы визуализации обменивались данными через файл. Чтение происходит 20 раз в секунду (желательно конечно больше). Можно было использовать клиент\серверсокеты, но я тогда когда делал не думал об этом. И передавались у меня производные (скорости разные и т.п.), а сейчас мне надо проинтегррованные значения передавать и возникают тормоза. Я бы переделал, но мне проект уже на днях предяъявлять А зачем можно базы данных с такой частотой открывать? Конечно понимаю если около 100 клиентов работают с одной бд... |