Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> согласованная робота двух приложен. 
:(
    Опции темы
Step
Дата 25.2.2003, 19:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: 5
Всего: 25



у меня два приложения одно записывает результаты в лист бох, а другое их обрабатывает

в первом помещаю в листбокс запись и отпровляю сообщение второму приложению об изминении
второе приложение обрабатывает должно обрабатывать изминения, но изменеия на момент обработки на самом деле еще не произошли хотя в первом приложении инсетрстринг уже выполненно.
Как дождаться действительного изминения в листбоксе, что бы только после него отправить соответсвующее сообщение?

Команду слееп ставить не хочется. и циклы проверки тоже запускать не желаю..


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
AntonSaburov
Дата 26.2.2003, 00:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

Репутация: нет
Всего: 118



Так ответить не получится - давай код посмотрим ?

Цитата
обрабатывать изминения, но изменеия


И все-таки "изменения" smile.gif
PM MAIL WWW ICQ   Вверх
Step
Дата 26.2.2003, 00:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: 5
Всего: 25



код прост
[CODE]
1 поток
a.insertstring(......);
soc.Send(...) // передается сообщения в другое поток, в данном случае поток т.к. пример проще, да сообщения в другой поток по сети кидается, не надо удивляться
2 поток
онресейве(...)
{
перебор записей в цикле, но последней записи не находит т.к. последняя запись долго запихивается через инсерт стринг, по профилингу инсерт стринг берет 6 процентов всего времени программы, а по сети пакет проходит даже быстрее чем вставляется запись.
}


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
AntonSaburov
Дата 26.2.2003, 01:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

Репутация: нет
Всего: 118



Давай по шагам:

a.insertstring() - она у тебя, как я понимаю, асинхронная. Так ?
Пока строка вставляется ты посылаешь сообщение другому приложению.
И вот это второе приложение откуда берет список строк ?


PM MAIL WWW ICQ   Вверх
Step
Дата 26.2.2003, 01:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: 5
Всего: 25



из первого приложения, каким макаром я получаю указатель на лист бокс не спрашывай...


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
AntonSaburov
Дата 26.2.2003, 01:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

Репутация: нет
Всего: 118



А ты не хочешь сделать некий callback, который будет вызываться тогда, когда строка реально будет вставлена ?
Ну и там уже посылать сообщение.

Или эта функция тебе не подвластна вообще ? Если так, то лучше чем остановиться до появления строки в списке, я не вижу.



PM MAIL WWW ICQ   Вверх
Step
Дата 26.2.2003, 01:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: 5
Всего: 25



вопрос в том как узнать что она уже добавленна, лист бок сообщения такого не дает и инсерт стринг работу моей функции не преостанавливает
кстати такая проблема возникает и при работе с бд через сеть


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
AntonSaburov
Дата 26.2.2003, 19:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

Репутация: нет
Всего: 118



Ну тогда элегантного решения похоже нет. Можно передавать в Send параметры вставляемой строки а во втором приложении входить в цикл ожидания пока строка не появиться в списке. Но это тоже решение не очень.
sad.gif

PM MAIL WWW ICQ   Вверх
Step
Дата 26.2.2003, 20:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: 5
Всего: 25



Цитата
Но это тоже решение не очень.
то - то и оно, а от лишь описан один случай когда возникает такая проблемма, а я встерчал уже таких проблем около 10 штук, и в основном это встречается в удаленных базах данных


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
AntonSaburov
Дата 26.2.2003, 20:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

Репутация: нет
Всего: 118



Цитата
то - то и оно, а от лишь описан один случай когда возникает такая проблемма, а я встречал уже таких проблем около 10 штук, и в основном это встречается в удаленных базах данных


Это точно. На базах данных такое встречается регулярно. Вот и задумаешься о среднем слое, который такие вещи умеет.

Нет в этом мире совершенства sad.gif
Может оно и к лучшему. Иначе остались бы мы без работы biggrin.gif
PM MAIL WWW ICQ   Вверх
Step
Дата 26.2.2003, 20:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: 5
Всего: 25



AntonSaburov а что ты думаеш о сообщении вм_чендж класса внд, может оно поможет, только я еще не могу это проверить, может ты выскажеш свои соображения


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
keisik
Дата 27.2.2003, 00:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 118
Регистрация: 25.3.2002

Репутация: нет
Всего: нет



А есть такой вариант (правда, через одно место): меняешь лист бокс на лист контрол и изголяешься над колбэковой функцией сортировки, которая вызывается для пересортировывания элементов после добавления нового.
--------------------
...None of that can stop us now,we will make it through somehow...
PM MAIL   Вверх
Step
Дата 27.2.2003, 00:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: 5
Всего: 25



keisik правда, что через жопу, но видать идея подходящая, буду пробывать, спасибо


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
keisik
Дата 27.2.2003, 01:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 118
Регистрация: 25.3.2002

Репутация: нет
Всего: нет



По большому счёту там можно обойтись минимум извращений - при добавлении нового элемента можно ловить и обрабатывать LVN_ITEMCHANGED.
--------------------
...None of that can stop us now,we will make it through somehow...
PM MAIL   Вверх
Step
Дата 27.2.2003, 02:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: 5
Всего: 25



keisik спасибо, но это решение справедливо только для конкретного случая, а хотелось бы знать что дядя Били по этому поводу придпринял....


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0522 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.