Замерки и приглючения
Wolfram
дневник заведен 29-09-2007
закладки:
цитатник:
дневник:
хочухи:
местожительство:
Крым, Украина
интересы [23]
[1] 21-01-2013 02:20
Хе-хе.

[Print]
tarakan4ik.blogspot.ru
17-05-2011 15:30
С утра починял примус винду у знакомых.
Потом немного поковырялся с кодом — многопоточные приложения довольно тяжко пока даются, попутно нашел прикольный глюк.
Продолжаю работать над ипподромом.
Сделал пятую неделю первый день.
Комментарии:
слоумышленник
многопоточные приложения довольно тяжко пока даются

Делай shared nothing архитектуру и не будет у тебя проблем. Два потока, у каждого всё своё, между ними напирмер, синхронизированная очередь. Сериализируешь объект, запихиваешь в очередь, другим потоком достаёшь, десериализируешь и обрабатываешь, и не будет у тебя проблем с тем, что кто-то застегнул то, что кто-то другой ещё не успел отряхнуть.
Камрад
Все хорошо, только я на делфях пишу)
Ну и сейчас (то задание я сделал) надо через мьютексы реализовать...
слоумышленник
и в дельфях ничего этого нет?
Камрад
Наверное как-то подобное реализовать реально, я не спец в делфях. Там есть стандартный класс для разработки многопоточных приложений — TThread, в нем синхронизация потоков реализована через абстрактный метод Synchronize, который переопределяется и может работать с VCL классами, а в основе его разные методы WinAPI, в зависимости от версии делфи. Ну я сорсы особо не смотрел, да и не нужно это.

Сериализации, как в java в Delphi 7 нет, или я не знаю и никогда не пользовался. (Честно говоря, я плохо представляю зачем вообще она нужна?)
Теперь моя задача — синхронизировать данные программы не через стандартные высокоуровневые классы делфи (например), а через т.н. объекты ядра (мьютексы (в моем случае), семафоры, эвенты). Ессно все для винды.
слоумышленник
Сериализация нужна чтобы передавать не объект (т.е. указатель), а копию объекта (копию данных) от одного процесса к другому. Очень удобно, если ты не хочешь чтобы два процесса лезли в один и тот же участок памяти. Отдал данные и забыл.

Ваш комментарий:
Камрад:
Гость []
Комментарий:
[смайлики сайта]
Дополнительно:
Автоматическое распознавание URL
Не преобразовывать смайлики
Cкрыть комментарий
Закрыть