Гость
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Отлов событий / 20 сообщений из 20, страница 1 из 1
18.01.2017, 16:05
    #39386966
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отлов событий
Есть такой код для отлова событий сервера
Код: pascal
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.
69.
procedure TEventBlock.QueueEvent;
begin
  FOwner.Database.Call(
    FOwner.GDSLibrary.isc_que_events(
      StatusVector,
      @FOwner.Database.Handle,
      @FID,
      FLen,
      FEvents,
      @EventCallback,
      PVoid(Self)
    ),
    True
  );
end;

procedure EventCallback(APtr: Pointer; ALength: Short; AUpdated: PAnsiChar); cdecl;
var
  LBlock: TEventBlock absolute APtr;
begin
  LBlock.DoEvent(AUpdated);
end;

procedure TEventBlock.DoEvent(AUpdated: Pointer);
var
  LVector: array[0..IB_MAX_EVENT_BLOCK - 1] of ISC_LONG;
  LIsEvent: Boolean;
  Li: Integer;
  LEventObj: TObject;
begin
  try
    if not TryLock then
      Exit;
    try
      if AUpdated <> nil then begin
        Move(AUpdated^, FResults^, FLen);
        FOwner.GDSLibrary.isc_event_counts(
          @LVector[0],
          FLen,
          FEvents,
          FResults
        );
        LIsEvent := not FFirstTime;
        if LIsEvent then begin
          for Li := 0 to FCount - 1 do begin
            if LVector[Li] <> 0 then
              FCatchedEvents.AddObject(FOwner.Events[FOffset + Li], TObject(LVector[Li]));
          end;
        end else begin
          FFirstTime := False;
          SetEvent(FInitEvent);
        end;
        LEventObj := Self;
      end else begin
        LEventObj := nil;
        LIsEvent := True;
      end;
    finally
      UnLock;
    end;
    if LIsEvent then
      FOwner.DoEvent(LEventObj);
  except
    on E: Exception do
      FOwner.DoExcept(E, ExceptAddr);
  end;
  if (FCatchedEvents <> nil) and FOwner.LostConnect then
    Free;
end;



В одном из филиалов стала возникать периодически ошибка. Судя по всему проблема в том, что isc_event_counts() возвращает вектор со всеми нулями. Соответственно в список событий ничего не добавляется, а уведомление о событии возникает. Вопрос, может ли вообще такое быть и если да, то в каком случае?

Сервер Interbase XE3 x64. Клиент - х32

С уважением, Vasilisk
...
Рейтинг: 0 / 0
18.01.2017, 16:17
    #39386973
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отлов событий
_Vasilisk_Судя по всему проблема в том, что isc_event_counts() возвращает вектор со всеми нулями.

Он может так делать, если isc_que_events() скармливается буфер, заполненный мусором или
(что то же самое) значениями из предыдущего коннекта.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
18.01.2017, 16:25
    #39386981
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отлов событий
Dimitry Sibiryakovскармливается буфер, заполненный мусоромЧто есть не мусор? Вектор принудительно залитый нулями? Или ты об event_buffer и result_buffer?

Вот инициализация этих буферов
Код: pascal
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.
constructor TEventBlock.Create(AOwner: TrsIBEvents; AOffset, ACount: Integer);
var
  Li: Integer;
  LEventStrs: array[0..IB_MAX_EVENT_BLOCK - 1] of AnsiString;
  LEvents: array[0..IB_MAX_EVENT_BLOCK - 1] of PAnsiChar;
begin
  inherited Create;
  FOwner := AOwner;
  FCount := ACount;
  FFirstTime := True;
  FOffset := AOffset;
  FCatchedEvents := TStringList.Create;
  FInitEvent := CreateEvent(nil, False, False, nil);
  try
    for Li := 0 to FCount - 1 do begin
      LEventStrs[Li] := AnsiString(FOwner.Events[AOffset + Li]);
      LEvents[Li] := PAnsiChar(LEventStrs[Li]);
    end;
    FLen := FOwner.GDSLibrary.isc_event_block(
      @FEvents,
      @FResults,
      FCount,
      LEvents
    );
    FillChar(FResults^, FLen, 0);
    QueueEvent;
    WaitForSingleObject(FInitEvent, INFINITE);
    QueueEvent;
  finally
    CloseHandle(FInitEvent);
  end;
end;

...
Рейтинг: 0 / 0
18.01.2017, 17:15
    #39387032
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отлов событий
_Vasilisk_FillChar(FResults^, FLen, 0);
Вот это делать не надо. Там сложная структура, которую махом сносить - чревато боком.

Кроме того, добавь в EventCallback проверку на ALength>0.

PS: В Interbase есть баги относительно работы событий. Подробности не помню, но они
проявляются только при локальном коннекте, TCP работает нормально.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
18.01.2017, 17:55
    #39387067
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отлов событий
Dimitry SibiryakovВот это делать не надо. Там сложная структура, которую махом сносить - чревато боком.Странно, откуда я это взял? Выпилю. Спасибо. Единственно скажу, что сейчас это работает везде, а проблема всплыла только на одном сервере
Dimitry Sibiryakovдобавь в EventCallback проверку на ALength>0.Проверки AUpdated <> nil не достаточно?
Dimitry SibiryakovTCP работает нормально.Везде только TCP
...
Рейтинг: 0 / 0
18.01.2017, 18:10
    #39387079
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отлов событий
_Vasilisk_Проверки AUpdated <> nil не достаточно?
Я не уверен. В моём коде, с которым я мучился давно и долго, стоят обе. Возможно, в
каких-то случаях проскакивал мусор в updated.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
23.01.2017, 16:41
    #39389650
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отлов событий
Dimitry SibiryakovЯ не уверен. В моём коде, с которым я мучился давно и долго, стоят обе. Возможно, в
каких-то случаях проскакивал мусор в updated.Получил логи возникновения. Все, как я и предполагал

Код: pascal
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.
69.
70.
71.
72.
73.
procedure EventCallback(APtr: Pointer; ALength: Short; AUpdated: PAnsiChar); cdecl;
var
  LBlock: TEventBlock absolute APtr;
begin
  GLog.AddFmt(#13#10#9#9'EventCallback. Block: %p, Length: %d, Updated: %p', [APtr, ALength, Pointer(AUpdated)]);
  LBlock.DoEvent(AUpdated);
end;

procedure TEventBlock.DoEvent(AUpdated: Pointer);
var
  LVector: array[0..IB_MAX_EVENT_BLOCK - 1] of ISC_LONG;
  LIsEvent: Boolean;
  Li: Integer;
  LEventObj: TObject;
begin
  try
    if not TryLock then
      Exit;
    try
      if AUpdated <> nil then begin
        Move(AUpdated^, FResults^, FLen);
        FOwner.GDSLibrary.isc_event_counts(
          @LVector[0],
          FLen,
          FEvents,
          FResults
        );
        LIsEvent := not FFirstTime;
        if LIsEvent then begin
          GLog.AddFmt('DoEvent. Events %p (%s), Block: %p, Count: %d', [Pointer(FOwner), FOwner.Name, Pointer(Self), FCount]);
          for Li := 0 to FCount - 1 do begin
            if LVector[Li] <> 0 then begin
              FCatchedEvents.AddObject(FOwner.Events[FOffset + Li], TObject(LVector[Li]));
              GLog.AddFmt('AddEvent: %s (%d). Idx: %d, TotalCount: %d', [FOwner.Events[FOffset + Li], LVector[Li], Li, FCatchedEvents.Count]);
            end;
          end;
        end else begin
          FFirstTime := False;
          SetEvent(FInitEvent);
        end;
        LEventObj := Self;
      end else begin
        LEventObj := nil;
        LIsEvent := True;
      end;
    finally
      UnLock;
    end;
    if LIsEvent then
      FOwner.DoEvent(LEventObj);
  except
    on E: Exception do
      FOwner.DoExcept(E, ExceptAddr);
  end;
  if (FCatchedEvents <> nil) and FOwner.LostConnect then
    Free;
end;

procedure TrsIBEvents.DoEvent(ABlock: TObject);
begin
  Lock;
  try
    GLog.AddFmt('TrsIBEvents.DoEvent. Self: %p (%s), Block: %p, Registerd: %s', [Pointer(Self), Name, Pointer(ABlock), rsBoolToStr(FRegistered)]);
    if ABlock <> nil then
      FCatchedBlocks.Add(ABlock)
    else
      FLostConnect := True;
  finally
    UnLock;
  end;
  if FRegistered then
    SyncAlert;
end;



Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
[2017-01-20 13:59:59.019][1]
		EventCallback. Block: 66AA5CF0, Length: 446, Updated: 0441BA4C, Thread: 2156
[2017-01-20 13:59:59.019][1] DoEvent. Events 7E9B5700 (PostEvents), Block: 66AA5CF0, Count: 15
[2017-01-20 13:59:59.019][1]  AddEvent: EVENT_EXC_TSK_STATUS_358 (1). Idx: 7 
[2017-01-20 13:59:59.019][1] TrsIBEvents.DoEvent. Self: 7E9B5700 (PostEvents), Block: 66AA5CF0

[2017-01-20 13:59:59.050][0] GetCatchedEvent. Self: 7E9B5700 (PostEvents), BlockCount: 1
[2017-01-20 13:59:59.050][0] CurrentBlock: 66AA5CF0
[2017-01-20 13:59:59.050][0] TEventBlock.GetCatchedEvent. Owner: 7E9B5700 (PostEvents), Count: 1,
  Events: EVENT_EXC_TSK_STATUS_358

[2017-01-20 13:59:59.128][1] 
		EventCallback. Block: 66AA5CF0, Length: 446, Updated: 0441BA4C, Thread: 2156
[2017-01-20 13:59:59.128][1] DoEvent. Events 7E9B5700 (PostEvents), Block: 66AA5CF0, Count: 15
[2017-01-20 13:59:59.128][1] TrsIBEvents.DoEvent. Self: 7E9B5700 (PostEvents), Block: 66AA5CF0
Т.е. Length и Updated приходят корректные, но во втором случае FCatchedEvents.AddObject не вызывается
...
Рейтинг: 0 / 0
23.01.2017, 17:24
    #39389696
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отлов событий
Чисто в качестве плясок с бубном: добавь обнуление FID перед вызовом isc_que_events() и проверь, что у тебя QueueEvent() вызывается исключительно из главного потока.
...
Рейтинг: 0 / 0
23.01.2017, 20:03
    #39389830
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отлов событий
Dimitry Sibiryakovдобавь обнуление FID перед вызовом isc_que_events()Фокус в том в том, что сейчас проблема пропала. После добавления детальных логов. Из-за этого я грешил на проблему синхронизации
Dimitry Sibiryakovпроверь, что у тебя QueueEvent() вызывается исключительно из главного потока.Это обязательно. Из-за этого требования мне, в свое время, пришлось радикально переписать код
...
Рейтинг: 0 / 0
24.01.2017, 14:54
    #39390321
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отлов событий
Dimitry Sibiryakovдобавь обнуление FID перед вызовом isc_que_events() и проверьОбнуление не добавил, но добавил логирование
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
procedure TEventBlock.QueueEvent;
begin
  GLog.AddFmt('Before QueueEvent. FID: %d', [FID]);
  FOwner.Database.Call(
    FOwner.GDSLibrary.isc_que_events(
      StatusVector,
      @FOwner.Database.Handle,
      @FID,
      FLen,
      FEvents,
      @EventCallback,
      PVoid(Self)
    ),
    True
  );
  GLog.AddFmt('After QueueEvent. FID: %d', [FID]);
end;

FID увеличивается с каждым вызовом.
Dimitry Sibiryakovпроверь, что у тебя QueueEvent() вызывается исключительно из главного потока.проверил прямо по логу. Все вызовы идут из одного потока

Не могут ли это быть последствия какого-нибудь антивируса или другого сетевого фильтра?
...
Рейтинг: 0 / 0
24.01.2017, 15:46
    #39390379
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отлов событий
И еще мысль. У меня события возникают парой и ловятся одним срабатыванием EventCallback. Когда появляется проблема - возникает два вызова EventCallback. Первый дает одно событие, а второй - ничего
...
Рейтинг: 0 / 0
24.01.2017, 16:09
    #39390412
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отлов событий
_Vasilisk_возникает два вызова EventCallbackС интервалом 150 мс
...
Рейтинг: 0 / 0
24.01.2017, 16:09
    #39390413
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отлов событий
_Vasilisk_Фокус в том в том, что сейчас проблема пропала. После добавления детальных логов.
я могу аналогию провести, с ошибками 10054. Например, если их много, то добавление какого-нибудь перехватчика tcp - антивирус, прокси, ФБСканер, и т.д. - эти ошибки могут пропадать.
Или наоборот. Если их нет или мало, внедрение перехватчика tcp может порождать 10054. А иногда обновление версии "перехватчика" опять эти ошибки убирает.

Так что, "проблема пропала" из-за дополнительных задержек. Как отлавливать где, что и кто - х.з.
...
Рейтинг: 0 / 0
24.01.2017, 16:13
    #39390415
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отлов событий
_Vasilisk_Когда появляется проблема - возникает *два* вызова EventCallback.
У меня такое впечатление, что при каких-то условиях у тебя QueueEvent вызывается два раза
подряд, не дождавшись срабатывания события. Добавь протоколирование номера потока при его
вызове.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
24.01.2017, 21:46
    #39390650
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отлов событий
Dimitry SibiryakovДобавь протоколирование номера потока при его вызове.Уже добавил. Фраза
_Vasilisk_проверил прямо по логу. Все вызовы идут из одного потокаотносилась к этому логу
...
Рейтинг: 0 / 0
24.01.2017, 21:56
    #39390656
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отлов событий
Собственно вот весь лог. ThreadID указан сразу после времени
[2017-01-24 12:47:52.268][ 3092] Before QueueEvent. FID: 0
[2017-01-24 12:47:52.393][ 3092] After QueueEvent. FID: 1
[2017-01-24 12:47:52.502][ 3296]
EventCallback. Block: 7EE1A710, Length: 348, Updated: 017D9A34
[2017-01-24 12:47:52.502][ 3296] TrsIBEvents.TryLock
[2017-01-24 12:47:52.502][ 3296] TrsIBEvents.TryLock Locked
[2017-01-24 12:47:52.502][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:47:52.502][ 3092] Before QueueEvent. FID: 1
[2017-01-24 12:47:52.502][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:47:52.502][ 3092] After QueueEvent. FID: 2
[2017-01-24 12:47:52.502][ 3092] CreateBlock. Owner: 7FF61870 (MainEvents), Self: 7EE1A710, Events: EVENT_POSTS_COORD_AU, EVENT_PST_STATE, EVENT_POSTS_ENABLED, EVENT_PST_UMS_STATUS, EVENT_PES_STARTED, EVENT_PES_STOPED, EVENT_PES_ERROR, EVENT_PES_DIALING, EVENT_PES_CONNECTING, EVENT_PES_CONNECTED, EVENT_PLN_NEW_TASKS, EVENT_PLN_CLOSED, PLAN_TASK_CTRL_INS, EVENT_TSK_EXT_STATE, EVENT_TSK_MESSAGE_1001,
[2017-01-24 12:47:52.502][ 3092] Before QueueEvent. FID: 0
[2017-01-24 12:47:52.502][ 3092] After QueueEvent. FID: 3
[2017-01-24 12:47:52.690][ 3296]
EventCallback. Block: 7EE1A7D0, Length: 286, Updated: 017D9948
[2017-01-24 12:47:52.690][ 3296] TrsIBEvents.TryLock
[2017-01-24 12:47:52.690][ 3296] TrsIBEvents.TryLock Locked
[2017-01-24 12:47:52.690][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:47:52.690][ 3092] Before QueueEvent. FID: 3
[2017-01-24 12:47:52.690][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:47:52.705][ 3092] After QueueEvent. FID: 4
[2017-01-24 12:47:52.705][ 3092] CreateBlock. Owner: 7FF61870 (MainEvents), Self: 7EE1A7D0, Events: EVENT_QUERIES_CONFIRM, EVENT_QUERIES_DONE, EVENT_MSM_IMPORT_SND, EVENT_MSM_IMPORT_FLP, EVENT_MSM_IMPORT_FTP, EVENT_MSM_IMPORT_PEL, EVENT_MSM_IMPORT_SPC, EVENT_MSM_IMPORT_OCP, EVENT_MSM_IMPORT_SRC, EVENT_MSM_IMPORT_LOC, EVENT_CFG_GLOBAL, EVENT_QUIT,
[2017-01-24 12:48:37.945][ 3092] Before QueueEvent. FID: 0
[2017-01-24 12:48:37.945][ 3092] After QueueEvent. FID: 5
[2017-01-24 12:48:37.945][ 3296]
EventCallback. Block: 72EBA230, Length: 90, Updated: 01BD52A0
[2017-01-24 12:48:37.945][ 3296] TrsIBEvents.TryLock
[2017-01-24 12:48:37.945][ 3296] TrsIBEvents.TryLock Locked
[2017-01-24 12:48:37.945][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:48:37.945][ 3092] Before QueueEvent. FID: 5
[2017-01-24 12:48:37.945][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:48:37.945][ 3092] After QueueEvent. FID: 6
[2017-01-24 12:48:37.945][ 3092] CreateBlock. Owner: 7E9CC930 (PostEvents), Self: 72EBA230, Events: EVENT_TSK_STATUS_326, EVENT_EXC_TSK_STATUS_326, EVENT_EXC_TSK_MESSAGE_1001_326,
[2017-01-24 12:48:49.743][ 3092] TrsIBEvents.Lock
[2017-01-24 12:48:49.743][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:48:49.743][ 3092]
EventCallback. Block: 72EBA230, Length: 0, Updated: 00000000
[2017-01-24 12:48:49.743][ 3092] TrsIBEvents.TryLock
[2017-01-24 12:48:49.743][ 3092] TrsIBEvents.TryLock Locked
[2017-01-24 12:48:49.743][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:48:49.743][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:48:49.743][ 3092] TrsIBEvents.Lock
[2017-01-24 12:48:49.743][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:48:49.743][ 3092] TrsIBEvents.DoEvent. Self: 7E9CC930 (PostEvents), Block: 00000000, Registerd: False
[2017-01-24 12:48:49.743][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:48:49.743][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:48:49.743][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:48:49.743][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:48:49.743][ 3092] Before QueueEvent. FID: 0
[2017-01-24 12:48:49.743][ 3092] After QueueEvent. FID: 7
[2017-01-24 12:48:49.743][ 3296]
EventCallback. Block: 72EB9570, Length: 179, Updated: 01C1EFA8
[2017-01-24 12:48:49.743][ 3296] TrsIBEvents.TryLock
[2017-01-24 12:48:49.743][ 3296] TrsIBEvents.TryLock Locked
[2017-01-24 12:48:49.743][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:48:49.743][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:48:49.743][ 3092] Before QueueEvent. FID: 7
[2017-01-24 12:48:49.759][ 3092] After QueueEvent. FID: 8
[2017-01-24 12:48:49.759][ 3092] CreateBlock. Owner: 7E9CC930 (PostEvents), Self: 72EB9570, Events: EVENT_TSK_STATUS_326, EVENT_EXC_TSK_STATUS_326, EVENT_EXC_TSK_MESSAGE_1001_326, EVENT_TSK_STATUS_380, EVENT_EXC_TSK_STATUS_380, EVENT_EXC_TSK_MESSAGE_1001_380,
[2017-01-24 12:49:00.432][ 3092] TrsIBEvents.Lock
[2017-01-24 12:49:00.432][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:49:00.432][ 3092]
EventCallback. Block: 72EB9570, Length: 0, Updated: 00000000
[2017-01-24 12:49:00.432][ 3092] TrsIBEvents.TryLock
[2017-01-24 12:49:00.432][ 3092] TrsIBEvents.TryLock Locked
[2017-01-24 12:49:00.432][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:49:00.432][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:00.432][ 3092] TrsIBEvents.Lock
[2017-01-24 12:49:00.432][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:49:00.432][ 3092] TrsIBEvents.DoEvent. Self: 7E9CC930 (PostEvents), Block: 00000000, Registerd: False
[2017-01-24 12:49:00.432][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:49:00.432][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:00.432][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:49:00.432][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:00.432][ 3092] Before QueueEvent. FID: 0
[2017-01-24 12:49:00.432][ 3092] After QueueEvent. FID: 9
[2017-01-24 12:49:00.432][ 3296]
EventCallback. Block: 72EB9570, Length: 268, Updated: 01C342D8
[2017-01-24 12:49:00.432][ 3296] TrsIBEvents.TryLock
[2017-01-24 12:49:00.432][ 3296] TrsIBEvents.TryLock Locked
[2017-01-24 12:49:00.432][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:49:00.432][ 3092] Before QueueEvent. FID: 9
[2017-01-24 12:49:00.432][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:00.448][ 3092] After QueueEvent. FID: 10
[2017-01-24 12:49:00.448][ 3092] CreateBlock. Owner: 7E9CC930 (PostEvents), Self: 72EB9570, Events: EVENT_TSK_STATUS_326, EVENT_EXC_TSK_STATUS_326, EVENT_EXC_TSK_MESSAGE_1001_326, EVENT_TSK_STATUS_380, EVENT_EXC_TSK_STATUS_380, EVENT_EXC_TSK_MESSAGE_1001_380, EVENT_TSK_STATUS_358, EVENT_EXC_TSK_STATUS_358, EVENT_EXC_TSK_MESSAGE_1001_358,
[2017-01-24 12:49:12.402][ 3092] TrsIBEvents.Lock
[2017-01-24 12:49:12.402][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:49:12.402][ 3092]
EventCallback. Block: 72EB9570, Length: 0, Updated: 00000000
[2017-01-24 12:49:12.402][ 3092] TrsIBEvents.TryLock
[2017-01-24 12:49:12.402][ 3092] TrsIBEvents.TryLock Locked
[2017-01-24 12:49:12.402][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:49:12.402][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:12.402][ 3092] TrsIBEvents.Lock
[2017-01-24 12:49:12.402][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:49:12.402][ 3092] TrsIBEvents.DoEvent. Self: 7E9CC930 (PostEvents), Block: 00000000, Registerd: False
[2017-01-24 12:49:12.402][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:49:12.402][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:12.402][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:49:12.402][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:12.402][ 3092] Before QueueEvent. FID: 0
[2017-01-24 12:49:12.402][ 3092] After QueueEvent. FID: 11
[2017-01-24 12:49:12.402][ 3296]
EventCallback. Block: 72EB9570, Length: 357, Updated: 04075ECC
[2017-01-24 12:49:12.402][ 3296] TrsIBEvents.TryLock
[2017-01-24 12:49:12.402][ 3296] TrsIBEvents.TryLock Locked
[2017-01-24 12:49:12.402][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:49:12.402][ 3092] Before QueueEvent. FID: 11
[2017-01-24 12:49:12.402][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:12.418][ 3092] After QueueEvent. FID: 12
[2017-01-24 12:49:12.418][ 3092] CreateBlock. Owner: 7E9CC930 (PostEvents), Self: 72EB9570, Events: EVENT_TSK_STATUS_326, EVENT_EXC_TSK_STATUS_326, EVENT_EXC_TSK_MESSAGE_1001_326, EVENT_TSK_STATUS_380, EVENT_EXC_TSK_STATUS_380, EVENT_EXC_TSK_MESSAGE_1001_380, EVENT_TSK_STATUS_358, EVENT_EXC_TSK_STATUS_358, EVENT_EXC_TSK_MESSAGE_1001_358, EVENT_TSK_STATUS_357, EVENT_EXC_TSK_STATUS_357, EVENT_EXC_TSK_MESSAGE_1001_357,
[2017-01-24 12:49:22.106][ 3296]
EventCallback. Block: 72EB9570, Length: 357, Updated: 040B4598
[2017-01-24 12:49:22.106][ 3296] TrsIBEvents.TryLock
[2017-01-24 12:49:22.106][ 3296] TrsIBEvents.TryLock Locked
[2017-01-24 12:49:22.106][ 3296] DoEvent. Events 7E9CC930 (PostEvents), Block: 72EB9570, Count: 12
[2017-01-24 12:49:22.106][ 3296] Indexes event: 0,
[2017-01-24 12:49:22.106][ 3296] AddEvent: EVENT_EXC_TSK_STATUS_326 (1). Idx: 1, TotalCount: 1
[2017-01-24 12:49:22.106][ 3296] Indexes event: 0, 1,
[2017-01-24 12:49:22.106][ 3296] Indexes event: 0, 1, 0,
[2017-01-24 12:49:22.106][ 3296] Indexes event: 0, 1, 0, 0,
[2017-01-24 12:49:22.106][ 3296] Indexes event: 0, 1, 0, 0, 0,
[2017-01-24 12:49:22.106][ 3296] Indexes event: 0, 1, 0, 0, 0, 0,
[2017-01-24 12:49:22.106][ 3296] Indexes event: 0, 1, 0, 0, 0, 0, 0,
[2017-01-24 12:49:22.106][ 3296] Indexes event: 0, 1, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:22.106][ 3296] Indexes event: 0, 1, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:22.106][ 3296] Indexes event: 0, 1, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:22.106][ 3296] Indexes event: 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:22.106][ 3296] Indexes event: 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:22.106][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:49:22.106][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:22.106][ 3296] TrsIBEvents.Lock
[2017-01-24 12:49:22.106][ 3296] TrsIBEvents.Lock Locked
[2017-01-24 12:49:22.106][ 3296] TrsIBEvents.DoEvent. Self: 7E9CC930 (PostEvents), Block: 72EB9570, Registerd: True
[2017-01-24 12:49:22.106][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:49:22.106][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:28.107][ 3092] TrsIBEvents.Lock
[2017-01-24 12:49:28.107][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:49:28.107][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:49:28.107][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:28.107][ 3092] Before QueueEvent. FID: 0
[2017-01-24 12:49:28.107][ 3092] After QueueEvent. FID: 13
[2017-01-24 12:49:28.107][ 3296]
EventCallback. Block: 72EB9570, Length: 446, Updated: 040B9618
[2017-01-24 12:49:28.107][ 3296] TrsIBEvents.TryLock
[2017-01-24 12:49:28.107][ 3296] TrsIBEvents.TryLock Locked
[2017-01-24 12:49:28.107][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:49:28.107][ 3092] Before QueueEvent. FID: 13
[2017-01-24 12:49:28.107][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:28.123][ 3092] After QueueEvent. FID: 14
[2017-01-24 12:49:28.123][ 3092] CreateBlock. Owner: 7E9CC930 (PostEvents), Self: 72EB9570, Events: EVENT_TSK_STATUS_326, EVENT_EXC_TSK_STATUS_326, EVENT_EXC_TSK_MESSAGE_1001_326, EVENT_TSK_STATUS_380, EVENT_EXC_TSK_STATUS_380, EVENT_EXC_TSK_MESSAGE_1001_380, EVENT_TSK_STATUS_358, EVENT_EXC_TSK_STATUS_358, EVENT_EXC_TSK_MESSAGE_1001_358, EVENT_TSK_STATUS_357, EVENT_EXC_TSK_STATUS_357, EVENT_EXC_TSK_MESSAGE_1001_357, EVENT_TSK_STATUS_356, EVENT_EXC_TSK_STATUS_356, EVENT_EXC_TSK_MESSAGE_1001_356,
[2017-01-24 12:49:30.264][ 3092] TrsIBEvents.Lock
[2017-01-24 12:49:30.264][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:49:30.264][ 3092] GetCatchedEvent. Self: 7E9CC930 (PostEvents), BlockCount: 0
[2017-01-24 12:49:30.264][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:49:30.264][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:35.624][ 3296]
EventCallback. Block: 72EB9570, Length: 446, Updated: 040EE114
[2017-01-24 12:49:35.624][ 3296] TrsIBEvents.TryLock
[2017-01-24 12:49:35.624][ 3296] TrsIBEvents.TryLock Locked
[2017-01-24 12:49:35.624][ 3296] DoEvent. Events 7E9CC930 (PostEvents), Block: 72EB9570, Count: 15
[2017-01-24 12:49:35.624][ 3296] AddEvent: EVENT_TSK_STATUS_326 (1). Idx: 0, TotalCount: 1
[2017-01-24 12:49:35.624][ 3296] Indexes event: 1,
[2017-01-24 12:49:35.624][ 3296] AddEvent: EVENT_EXC_TSK_STATUS_326 (1). Idx: 1, TotalCount: 2
[2017-01-24 12:49:35.624][ 3296] Indexes event: 1, 1,
[2017-01-24 12:49:35.624][ 3296] Indexes event: 1, 1, 0,
[2017-01-24 12:49:35.624][ 3296] Indexes event: 1, 1, 0, 0,
[2017-01-24 12:49:35.624][ 3296] Indexes event: 1, 1, 0, 0, 0,
[2017-01-24 12:49:35.624][ 3296] Indexes event: 1, 1, 0, 0, 0, 0,
[2017-01-24 12:49:35.624][ 3296] Indexes event: 1, 1, 0, 0, 0, 0, 0,
[2017-01-24 12:49:35.624][ 3296] Indexes event: 1, 1, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:35.624][ 3296] Indexes event: 1, 1, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:35.624][ 3296] Indexes event: 1, 1, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:35.624][ 3296] Indexes event: 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:35.624][ 3296] Indexes event: 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:35.624][ 3296] Indexes event: 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:35.624][ 3296] Indexes event: 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:35.624][ 3296] Indexes event: 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:35.624][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:49:35.624][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:35.624][ 3296] TrsIBEvents.Lock
[2017-01-24 12:49:35.624][ 3296] TrsIBEvents.Lock Locked
[2017-01-24 12:49:35.624][ 3296] TrsIBEvents.DoEvent. Self: 7E9CC930 (PostEvents), Block: 72EB9570, Registerd: True
[2017-01-24 12:49:35.624][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:49:35.624][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:35.624][ 3092] TrsIBEvents.Lock
[2017-01-24 12:49:35.624][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:49:35.624][ 3092] GetCatchedEvent. Self: 7E9CC930 (PostEvents), BlockCount: 1
[2017-01-24 12:49:35.624][ 3092] CurrentBlock: 72EB9570
[2017-01-24 12:49:35.624][ 3092] TEventBlock.GetCatchedEvent. Owner: 7E9CC930 (PostEvents), Count: 2, Events: EVENT_TSK_STATUS_326,EVENT_EXC_TSK_STATUS_326
[2017-01-24 12:49:35.624][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:49:35.624][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:35.686][ 3092] TrsIBEvents.Lock
[2017-01-24 12:49:35.686][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:49:35.686][ 3092] GetCatchedEvent. Self: 7E9CC930 (PostEvents), BlockCount: 1
[2017-01-24 12:49:35.686][ 3092] CurrentBlock: 72EB9570
[2017-01-24 12:49:35.686][ 3092] TEventBlock.GetCatchedEvent. Owner: 7E9CC930 (PostEvents), Count: 1, Events: EVENT_EXC_TSK_STATUS_326
[2017-01-24 12:49:35.686][ 3092] Before QueueEvent. FID: 14
[2017-01-24 12:49:35.686][ 3092] After QueueEvent. FID: 15
[2017-01-24 12:49:35.686][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:49:35.686][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:35.686][ 3092] TrsIBEvents.Lock
[2017-01-24 12:49:35.686][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:49:35.686][ 3092] GetCatchedEvent. Self: 7E9CC930 (PostEvents), BlockCount: 0
[2017-01-24 12:49:35.686][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:49:35.686][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:37.046][ 3296]
EventCallback. Block: 72EB9570, Length: 446, Updated: 040B30C4
[2017-01-24 12:49:37.046][ 3296] TrsIBEvents.TryLock
[2017-01-24 12:49:37.046][ 3296] TrsIBEvents.TryLock Locked
[2017-01-24 12:49:37.046][ 3296] DoEvent. Events 7E9CC930 (PostEvents), Block: 72EB9570, Count: 15
[2017-01-24 12:49:37.046][ 3296] AddEvent: EVENT_TSK_STATUS_326 (1). Idx: 0, TotalCount: 1
[2017-01-24 12:49:37.046][ 3296] Indexes event: 1,
[2017-01-24 12:49:37.046][ 3296] AddEvent: EVENT_EXC_TSK_STATUS_326 (1). Idx: 1, TotalCount: 2
[2017-01-24 12:49:37.046][ 3296] Indexes event: 1, 1,
[2017-01-24 12:49:37.046][ 3296] Indexes event: 1, 1, 0,
[2017-01-24 12:49:37.046][ 3296] Indexes event: 1, 1, 0, 0,
[2017-01-24 12:49:37.046][ 3296] Indexes event: 1, 1, 0, 0, 0,
[2017-01-24 12:49:37.046][ 3296] Indexes event: 1, 1, 0, 0, 0, 0,
[2017-01-24 12:49:37.046][ 3296] Indexes event: 1, 1, 0, 0, 0, 0, 0,
[2017-01-24 12:49:37.046][ 3296] Indexes event: 1, 1, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:37.046][ 3296] Indexes event: 1, 1, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:37.046][ 3296] Indexes event: 1, 1, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:37.046][ 3296] Indexes event: 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:37.046][ 3296] Indexes event: 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:37.046][ 3296] Indexes event: 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:37.046][ 3296] Indexes event: 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:37.046][ 3296] Indexes event: 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:37.046][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:49:37.046][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:37.046][ 3296] TrsIBEvents.Lock
[2017-01-24 12:49:37.046][ 3296] TrsIBEvents.Lock Locked
[2017-01-24 12:49:37.046][ 3296] TrsIBEvents.DoEvent. Self: 7E9CC930 (PostEvents), Block: 72EB9570, Registerd: True
[2017-01-24 12:49:37.046][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:49:37.046][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:37.436][ 3296]
EventCallback. Block: 7EE1A7D0, Length: 286, Updated: 040F65D8
[2017-01-24 12:49:37.436][ 3296] TrsIBEvents.TryLock
[2017-01-24 12:49:37.436][ 3296] TrsIBEvents.TryLock Locked
[2017-01-24 12:49:37.436][ 3296] DoEvent. Events 7FF61870 (MainEvents), Block: 7EE1A7D0, Count: 12
[2017-01-24 12:49:37.436][ 3296] Indexes event: 0,
[2017-01-24 12:49:37.436][ 3296] Indexes event: 0, 0,
[2017-01-24 12:49:37.436][ 3296] Indexes event: 0, 0, 0,
[2017-01-24 12:49:37.436][ 3296] Indexes event: 0, 0, 0, 0,
[2017-01-24 12:49:37.436][ 3296] Indexes event: 0, 0, 0, 0, 0,
[2017-01-24 12:49:37.436][ 3296] Indexes event: 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:37.436][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:37.436][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:49:37.436][ 3296] AddEvent: EVENT_MSM_IMPORT_SRC (1). Idx: 8, TotalCount: 1
[2017-01-24 12:49:37.436][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0, 1,
[2017-01-24 12:49:37.436][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0, 1, 0,
[2017-01-24 12:49:37.436][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,
[2017-01-24 12:49:37.436][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0,
[2017-01-24 12:49:37.436][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:49:37.436][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:37.436][ 3296] TrsIBEvents.Lock
[2017-01-24 12:49:37.436][ 3296] TrsIBEvents.Lock Locked
[2017-01-24 12:49:37.436][ 3296] TrsIBEvents.DoEvent. Self: 7FF61870 (MainEvents), Block: 7EE1A7D0, Registerd: True
[2017-01-24 12:49:37.436][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:49:37.436][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:44.109][ 3092] TrsIBEvents.Lock
[2017-01-24 12:49:44.109][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:49:44.124][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:49:44.124][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:44.124][ 3092] Before QueueEvent. FID: 0
[2017-01-24 12:49:44.124][ 3092] After QueueEvent. FID: 16
[2017-01-24 12:49:44.124][ 3296]
EventCallback. Block: 72EB9570, Length: 446, Updated: 0412CBC8
[2017-01-24 12:49:44.124][ 3296] TrsIBEvents.TryLock
[2017-01-24 12:49:44.124][ 3296] TrsIBEvents.TryLock Locked
[2017-01-24 12:49:44.124][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:49:44.124][ 3092] Before QueueEvent. FID: 16
[2017-01-24 12:49:44.124][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:44.124][ 3092] After QueueEvent. FID: 17
[2017-01-24 12:49:44.124][ 3092] CreateBlock. Owner: 7E9CC930 (PostEvents), Self: 72EB9570, Events: EVENT_TSK_STATUS_326, EVENT_EXC_TSK_STATUS_326, EVENT_EXC_TSK_MESSAGE_1001_326, EVENT_TSK_STATUS_380, EVENT_EXC_TSK_STATUS_380, EVENT_EXC_TSK_MESSAGE_1001_380, EVENT_TSK_STATUS_358, EVENT_EXC_TSK_STATUS_358, EVENT_EXC_TSK_MESSAGE_1001_358, EVENT_TSK_STATUS_357, EVENT_EXC_TSK_STATUS_357, EVENT_EXC_TSK_MESSAGE_1001_357, EVENT_TSK_STATUS_356, EVENT_EXC_TSK_STATUS_356, EVENT_EXC_TSK_MESSAGE_1001_356,
[2017-01-24 12:49:44.124][ 3092] Before QueueEvent. FID: 0
[2017-01-24 12:49:44.124][ 3092] After QueueEvent. FID: 18
[2017-01-24 12:49:44.265][ 3296]
EventCallback. Block: 5581D230, Length: 90, Updated: 0412CFD8
[2017-01-24 12:49:44.265][ 3296] TrsIBEvents.TryLock
[2017-01-24 12:49:44.265][ 3296] TrsIBEvents.TryLock Locked
[2017-01-24 12:49:44.265][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:49:44.265][ 3092] Before QueueEvent. FID: 18
[2017-01-24 12:49:44.265][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:44.265][ 3092] After QueueEvent. FID: 19
[2017-01-24 12:49:44.265][ 3092] CreateBlock. Owner: 7E9CC930 (PostEvents), Self: 5581D230, Events: EVENT_TSK_STATUS_353, EVENT_EXC_TSK_STATUS_353, EVENT_EXC_TSK_MESSAGE_1001_353,
[2017-01-24 12:49:44.984][ 3092] TrsIBEvents.Lock
[2017-01-24 12:49:44.984][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:49:44.984][ 3092] GetCatchedEvent. Self: 7E9CC930 (PostEvents), BlockCount: 0
[2017-01-24 12:49:44.984][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:49:44.984][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:44.984][ 3092] TrsIBEvents.Lock
[2017-01-24 12:49:44.984][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:49:44.984][ 3092] GetCatchedEvent. Self: 7FF61870 (MainEvents), BlockCount: 1
[2017-01-24 12:49:44.984][ 3092] CurrentBlock: 7EE1A7D0
[2017-01-24 12:49:44.984][ 3092] TEventBlock.GetCatchedEvent. Owner: 7FF61870 (MainEvents), Count: 1, Events: EVENT_MSM_IMPORT_SRC
[2017-01-24 12:49:44.984][ 3092] Before QueueEvent. FID: 4
[2017-01-24 12:49:44.984][ 3092] After QueueEvent. FID: 20
[2017-01-24 12:49:44.984][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:49:44.984][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:49:45.390][ 3092] TrsIBEvents.Lock
[2017-01-24 12:49:45.390][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:49:45.390][ 3092] GetCatchedEvent. Self: 7FF61870 (MainEvents), BlockCount: 0
[2017-01-24 12:49:45.390][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:49:45.390][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:50:40.631][ 3092] TrsIBEvents.Lock
[2017-01-24 12:50:40.631][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:50:40.647][ 3092]
EventCallback. Block: 5581D230, Length: 0, Updated: 00000000
[2017-01-24 12:50:40.647][ 3092] TrsIBEvents.TryLock
[2017-01-24 12:50:40.647][ 3092] TrsIBEvents.TryLock Locked
[2017-01-24 12:50:40.647][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:50:40.647][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:50:40.647][ 3092] TrsIBEvents.Lock
[2017-01-24 12:50:40.647][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:50:40.647][ 3092] TrsIBEvents.DoEvent. Self: 7E9CC930 (PostEvents), Block: 00000000, Registerd: False
[2017-01-24 12:50:40.647][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:50:40.647][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:50:40.647][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:50:40.647][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:50:40.647][ 3092] TrsIBEvents.Lock
[2017-01-24 12:50:40.647][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:50:40.647][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:50:40.647][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:50:40.647][ 3092] Before QueueEvent. FID: 0
[2017-01-24 12:50:40.647][ 3092] After QueueEvent. FID: 21
[2017-01-24 12:50:40.647][ 3296]
EventCallback. Block: 72EB9570, Length: 446, Updated: 0415F380
[2017-01-24 12:50:40.647][ 3296] TrsIBEvents.TryLock
[2017-01-24 12:50:40.647][ 3296] TrsIBEvents.TryLock Locked
[2017-01-24 12:50:40.647][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:50:40.647][ 3092] Before QueueEvent. FID: 21
[2017-01-24 12:50:40.647][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:50:40.647][ 3092] After QueueEvent. FID: 22
[2017-01-24 12:50:40.647][ 3092] CreateBlock. Owner: 7E9CC930 (PostEvents), Self: 72EB9570, Events: EVENT_TSK_STATUS_326, EVENT_EXC_TSK_STATUS_326, EVENT_EXC_TSK_MESSAGE_1001_326, EVENT_TSK_STATUS_380, EVENT_EXC_TSK_STATUS_380, EVENT_EXC_TSK_MESSAGE_1001_380, EVENT_TSK_STATUS_358, EVENT_EXC_TSK_STATUS_358, EVENT_EXC_TSK_MESSAGE_1001_358, EVENT_TSK_STATUS_357, EVENT_EXC_TSK_STATUS_357, EVENT_EXC_TSK_MESSAGE_1001_357, EVENT_TSK_STATUS_356, EVENT_EXC_TSK_STATUS_356, EVENT_EXC_TSK_MESSAGE_1001_356,
[2017-01-24 12:50:40.647][ 3092] Before QueueEvent. FID: 0
[2017-01-24 12:50:40.647][ 3092] After QueueEvent. FID: 23
[2017-01-24 12:50:40.787][ 3296]
EventCallback. Block: 4FF2B360, Length: 179, Updated: 04163588
[2017-01-24 12:50:40.787][ 3296] TrsIBEvents.TryLock
[2017-01-24 12:50:40.803][ 3296] TrsIBEvents.TryLock Locked
[2017-01-24 12:50:40.803][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:50:40.803][ 3092] Before QueueEvent. FID: 23
[2017-01-24 12:50:40.803][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:50:40.803][ 3092] After QueueEvent. FID: 24
[2017-01-24 12:50:40.803][ 3092] CreateBlock. Owner: 7E9CC930 (PostEvents), Self: 4FF2B360, Events: EVENT_TSK_STATUS_353, EVENT_EXC_TSK_STATUS_353, EVENT_EXC_TSK_MESSAGE_1001_353, EVENT_TSK_STATUS_367, EVENT_EXC_TSK_STATUS_367, EVENT_EXC_TSK_MESSAGE_1001_367,
[2017-01-24 12:50:51.539][ 3092] TrsIBEvents.Lock
[2017-01-24 12:50:51.539][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:50:51.554][ 3092]
EventCallback. Block: 4FF2B360, Length: 0, Updated: 00000000
[2017-01-24 12:50:51.554][ 3092] TrsIBEvents.TryLock
[2017-01-24 12:50:51.554][ 3092] TrsIBEvents.TryLock Locked
[2017-01-24 12:50:51.554][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:50:51.554][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:50:51.554][ 3092] TrsIBEvents.Lock
[2017-01-24 12:50:51.554][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:50:51.554][ 3092] TrsIBEvents.DoEvent. Self: 7E9CC930 (PostEvents), Block: 00000000, Registerd: False
[2017-01-24 12:50:51.554][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:50:51.554][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:50:51.554][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:50:51.554][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:50:51.554][ 3092] TrsIBEvents.Lock
[2017-01-24 12:50:51.554][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:50:51.554][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:50:51.554][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:50:51.554][ 3092] Before QueueEvent. FID: 0
[2017-01-24 12:50:51.554][ 3092] After QueueEvent. FID: 25
[2017-01-24 12:50:51.554][ 3296]
EventCallback. Block: 72EB9570, Length: 446, Updated: 0416E408
[2017-01-24 12:50:51.554][ 3296] TrsIBEvents.TryLock
[2017-01-24 12:50:51.554][ 3296] TrsIBEvents.TryLock Locked
[2017-01-24 12:50:51.554][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:50:51.554][ 3092] Before QueueEvent. FID: 25
[2017-01-24 12:50:51.554][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:50:51.554][ 3092] After QueueEvent. FID: 26
[2017-01-24 12:50:51.554][ 3092] CreateBlock. Owner: 7E9CC930 (PostEvents), Self: 72EB9570, Events: EVENT_TSK_STATUS_326, EVENT_EXC_TSK_STATUS_326, EVENT_EXC_TSK_MESSAGE_1001_326, EVENT_TSK_STATUS_380, EVENT_EXC_TSK_STATUS_380, EVENT_EXC_TSK_MESSAGE_1001_380, EVENT_TSK_STATUS_358, EVENT_EXC_TSK_STATUS_358, EVENT_EXC_TSK_MESSAGE_1001_358, EVENT_TSK_STATUS_357, EVENT_EXC_TSK_STATUS_357, EVENT_EXC_TSK_MESSAGE_1001_357, EVENT_TSK_STATUS_356, EVENT_EXC_TSK_STATUS_356, EVENT_EXC_TSK_MESSAGE_1001_356,
[2017-01-24 12:50:51.554][ 3092] Before QueueEvent. FID: 0
[2017-01-24 12:50:51.554][ 3092] After QueueEvent. FID: 27
[2017-01-24 12:50:51.664][ 3296]
EventCallback. Block: 4EA41790, Length: 268, Updated: 0416E294
[2017-01-24 12:50:51.664][ 3296] TrsIBEvents.TryLock
[2017-01-24 12:50:51.664][ 3296] TrsIBEvents.TryLock Locked
[2017-01-24 12:50:51.664][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:50:51.664][ 3092] Before QueueEvent. FID: 27
[2017-01-24 12:50:51.664][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:50:51.664][ 3092] After QueueEvent. FID: 28
[2017-01-24 12:50:51.664][ 3092] CreateBlock. Owner: 7E9CC930 (PostEvents), Self: 4EA41790, Events: EVENT_TSK_STATUS_353, EVENT_EXC_TSK_STATUS_353, EVENT_EXC_TSK_MESSAGE_1001_353, EVENT_TSK_STATUS_367, EVENT_EXC_TSK_STATUS_367, EVENT_EXC_TSK_MESSAGE_1001_367, EVENT_TSK_STATUS_383, EVENT_EXC_TSK_STATUS_383, EVENT_EXC_TSK_MESSAGE_1001_383,
[2017-01-24 12:56:14.279][ 3296]
EventCallback. Block: 72EB9570, Length: 446, Updated: 04170DBC
[2017-01-24 12:56:14.279][ 3296] TrsIBEvents.TryLock
[2017-01-24 12:56:14.279][ 3296] TrsIBEvents.TryLock Locked
[2017-01-24 12:56:14.279][ 3296] DoEvent. Events 7E9CC930 (PostEvents), Block: 72EB9570, Count: 15
[2017-01-24 12:56:14.279][ 3296] Indexes event: 0,
[2017-01-24 12:56:14.279][ 3296] Indexes event: 0, 0,
[2017-01-24 12:56:14.279][ 3296] Indexes event: 0, 0, 0,
[2017-01-24 12:56:14.279][ 3296] Indexes event: 0, 0, 0, 0,
[2017-01-24 12:56:14.279][ 3296] Indexes event: 0, 0, 0, 0, 0,
[2017-01-24 12:56:14.279][ 3296] Indexes event: 0, 0, 0, 0, 0, 0,
[2017-01-24 12:56:14.279][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:56:14.279][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:56:14.279][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:56:14.279][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:56:14.279][ 3296] AddEvent: EVENT_EXC_TSK_STATUS_357 (1). Idx: 10, TotalCount: 1
[2017-01-24 12:56:14.279][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
[2017-01-24 12:56:14.279][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0,
[2017-01-24 12:56:14.279][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,
[2017-01-24 12:56:14.279][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0,
[2017-01-24 12:56:14.279][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0,
[2017-01-24 12:56:14.279][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:56:14.279][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:56:14.279][ 3296] TrsIBEvents.Lock
[2017-01-24 12:56:14.279][ 3296] TrsIBEvents.Lock Locked
[2017-01-24 12:56:14.279][ 3296] TrsIBEvents.DoEvent. Self: 7E9CC930 (PostEvents), Block: 72EB9570, Registerd: True
[2017-01-24 12:56:14.279][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:56:14.279][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:56:14.326][ 3092] TrsIBEvents.Lock
[2017-01-24 12:56:14.326][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:56:14.326][ 3092] GetCatchedEvent. Self: 7E9CC930 (PostEvents), BlockCount: 1
[2017-01-24 12:56:14.326][ 3092] CurrentBlock: 72EB9570
[2017-01-24 12:56:14.326][ 3092] TEventBlock.GetCatchedEvent. Owner: 7E9CC930 (PostEvents), Count: 1, Events: EVENT_EXC_TSK_STATUS_357
[2017-01-24 12:56:14.326][ 3092] Before QueueEvent. FID: 26
[2017-01-24 12:56:14.341][ 3092] After QueueEvent. FID: 29
[2017-01-24 12:56:14.341][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:56:14.341][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:56:14.341][ 3092] TrsIBEvents.Lock
[2017-01-24 12:56:14.341][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:56:14.341][ 3092] GetCatchedEvent. Self: 7E9CC930 (PostEvents), BlockCount: 0
[2017-01-24 12:56:14.341][ 3092] TrsIBEvents.UnLock
[2017-01-24 12:56:14.341][ 3092] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:56:14.373][ 3296]
EventCallback. Block: 72EB9570, Length: 446, Updated: 04170F38
[2017-01-24 12:56:14.373][ 3296] TrsIBEvents.TryLock
[2017-01-24 12:56:14.373][ 3296] TrsIBEvents.TryLock Locked
[2017-01-24 12:56:14.373][ 3296] DoEvent. Events 7E9CC930 (PostEvents), Block: 72EB9570, Count: 15
[2017-01-24 12:56:14.373][ 3296] Indexes event: 0,
[2017-01-24 12:56:14.373][ 3296] Indexes event: 0, 0,
[2017-01-24 12:56:14.373][ 3296] Indexes event: 0, 0, 0,
[2017-01-24 12:56:14.373][ 3296] Indexes event: 0, 0, 0, 0,
[2017-01-24 12:56:14.373][ 3296] Indexes event: 0, 0, 0, 0, 0,
[2017-01-24 12:56:14.373][ 3296] Indexes event: 0, 0, 0, 0, 0, 0,
[2017-01-24 12:56:14.373][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:56:14.373][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:56:14.373][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:56:14.373][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:56:14.373][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:56:14.373][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:56:14.373][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:56:14.373][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:56:14.373][ 3296] Indexes event: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
[2017-01-24 12:56:14.373][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:56:14.373][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:56:14.373][ 3296] TrsIBEvents.Lock
[2017-01-24 12:56:14.373][ 3296] TrsIBEvents.Lock Locked
[2017-01-24 12:56:14.373][ 3296] TrsIBEvents.DoEvent. Self: 7E9CC930 (PostEvents), Block: 72EB9570, Registerd: True
[2017-01-24 12:56:14.373][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:56:14.373][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:56:14.373][ 3092] TrsIBEvents.Lock
[2017-01-24 12:56:14.373][ 3092] TrsIBEvents.Lock Locked
[2017-01-24 12:56:14.373][ 3092] GetCatchedEvent. Self: 7E9CC930 (PostEvents), BlockCount: 1
[2017-01-24 12:56:14.373][ 3092] CurrentBlock: 72EB9570
Indexes event - это массив, возвращаемый isc_event_counts. (получаемая пирамида - из-за ошибки вывода в лог)
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
        FOwner.GDSLibrary.isc_event_counts(
          @LVector[0],
          FLen,
          FEvents,
          FResults
        );
        LIsEvent := not FFirstTime;
        if LIsEvent then begin
          GLog.AddFmt('DoEvent. Events %p (%s), Block: %p, Count: %d', [Pointer(FOwner), FOwner.Name, Pointer(Self), FCount]);
          LStr := '';
          for Li := 0 to FCount - 1 do begin
            LStr := LStr + IntToStr(LVector[Li]) + ', ';
            if LVector[Li] <> 0 then begin
              FCatchedEvents.AddObject(FOwner.Events[FOffset + Li], TObject(LVector[Li]));
              GLog.AddFmt('AddEvent: %s (%d). Idx: %d, TotalCount: %d', [FOwner.Events[FOffset + Li], LVector[Li], Li, FCatchedEvents.Count]);
            end;
            GLog.AddFmt('Indexes event: %s', [LStr]);
          end;
...
Рейтинг: 0 / 0
24.01.2017, 22:07
    #39390662
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отлов событий
_Vasilisk_EventCallback. Block: 7EE1A7D0 , Length: 286, Updated: 017D9948
[2017-01-24 12:47:52.690][ 3296] TrsIBEvents.TryLock
[2017-01-24 12:47:52.690][ 3296] TrsIBEvents.TryLock Locked
[2017-01-24 12:47:52.690][ 3296] TrsIBEvents.UnLock
[2017-01-24 12:47:52.690][ 3092] Before QueueEvent. FID: 3
[2017-01-24 12:47:52.690][ 3296] TrsIBEvents.UnLock UnLocked
[2017-01-24 12:47:52.705][ 3092] After QueueEvent. FID: 4
[2017-01-24 12:47:52.705][ 3092] CreateBlock . Owner: 7FF61870 (MainEvents),
Self: 7EE1A7D0

Вот это мне не нравится: ты сначала получаешь колбэк, потом его снова регистрируешь, а
потом создаёшь новый блок. Как-то это неправильно...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
24.01.2017, 23:26
    #39390684
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отлов событий
Dimitry SibiryakovВот это мне не нравится: ты сначала получаешь колбэк, потом его снова регистрируешь, а
потом создаёшь новый блок. Как-то это неправильно...Все там правильно. Просто сообщение CreateBlock пишется в конце конструктора. Как-то так
Код: pascal
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.
constructor TEventBlock.Create(AOwner: TrsIBEvents; AOffset, ACount: Integer);
var
  Li: Integer;
  LEventStrs: array[0..IB_MAX_EVENT_BLOCK - 1] of AnsiString;
  LEvents: array[0..IB_MAX_EVENT_BLOCK - 1] of PAnsiChar;
begin
  inherited Create;
  FOwner := AOwner;
  FCount := ACount;
  FFirstTime := True;
  FOffset := AOffset;
  FCatchedEvents := TStringList.Create;
  FInitEvent := CreateEvent(nil, False, False, nil);
  try
    for Li := 0 to FCount - 1 do begin
      LEventStrs[Li] := AnsiString(FOwner.Events[AOffset + Li]);
      LEvents[Li] := PAnsiChar(LEventStrs[Li]);
    end;
    FLen := FOwner.GDSLibrary.isc_event_block(
      @FEvents,
      @FResults,
      FCount,
      LEvents
    );
    FillChar(FResults^, FLen, 0);
    QueueEvent;  // Тут срабатывает каллбек
    WaitForSingleObject(FInitEvent, INFINITE);
    QueueEvent;
  finally
    CloseHandle(FInitEvent);
  end;
  GLog.AddFmt('CreateBlock Self: %p', [Pointer(Self)]);  // А здесь пишем в лог
end;

...
Рейтинг: 0 / 0
24.01.2017, 23:41
    #39390691
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отлов событий
_Vasilisk_[2017-01-24 12:49:00.432][ 3092]
EventCallback. Block: 72EB9570, Length: 0, Updated: 00000000
А откуда это срабатывание в контексте главного потока? isc_cancel_event() вызывается?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
25.01.2017, 14:56
    #39391200
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отлов событий
Dimitry SibiryakovА откуда это срабатывание в контексте главного потока? isc_cancel_event() вызывается?Да. В процессе работы программы могут появляться новые события, которые необходимо слушать. Тогда убиваются все старые блоки
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
destructor TEventBlock.Destroy;
begin
  FreeAndNil(FCatchedEvents);
  Lock;
  try
    if not FOwner.LostConnect and FOwner.Database.TestConnected then begin
      FOwner.Database.Call(
        FOwner.GDSLibrary.isc_cancel_events(
          StatusVector,
          @FOwner.Database.Handle,
          @FID
        ),
        True
      );
    end;
    FOwner.GDSLibrary.isc_free(FEvents);
    FOwner.GDSLibrary.isc_free(FResults);
  finally
    UnLock;
  end;
  inherited Destroy;
end;

и создаются новые
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Отлов событий / 20 сообщений из 20, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]