
Кабель поставил просто для облагораживания картинки

------------ Дoбавленo в 20.34:
Assasin писал(а):
А кто сказал, что он должен выдавать в поток 0?Assasin писал(а):
так чего там тебе не хватает 
Разберем мультик:
Первый компонент Memory (используемые процедуры)
procedure THIMemory._work_doValue;
begin
FData := ReadData(_Data,_data_Data);
_hi_CreateEvent(_Data,@_event_onData,FData);
end;
........................
procedure THIMemory._var_Value;
begin
_Data := FData;
end;
procedure THICase._work_doCase;
var dt:TData;
begin
dt := _Data;
if Compare(ReadFromThread(_Data),_prop_Value,0) then
_hi_OnEvent_(_event_onTrue, FData)
else
_hi_OnEvent(_event_onNextCase,dt);
end;
procedure THICase._work_doDataOnTrue; begin FData:= _Data; end;
procedure THIHub.doEvent;
var i:integer;
begin
for i := 0 to FOutCount-1 do
_hi_onEvent_(onEvent[i],Data);
end;
procedure THIDoData._work_doData;
begin
dtNull(_Data);
_hi_CreateEvent(_Data,@_event_onEventData,ReadData(_Data,_data_Data,@_prop_Data));
end;
Добавление If и _hi_CreateEvent в коды Counter-a намного и быстрее и менее "кодоемкое" применения предложеной тобой лабуды.
Извини, другого названия незнаю.
Правда это называется ещё ИНДУССКИМ кодом.
Для наглядности коды не свернул.