IPC с помощью сигналов

Discussion in 'WASM.UNIX' started by pluton, Mar 20, 2008.

  1. pluton

    pluton New Member

    Blog Posts:
    0
    Joined:
    Feb 8, 2007
    Messages:
    66
    Location:
    Odessa
    привет!
    необходимо сделать простое IPC с помощью сигналов, изза этого возникает вопрос - как-то возможно передать обработчику дополнительные данные о сигнале?
    это не надо, если бы сигналов было много, но так юзерских доступно всего два SIGUSR.
    спасибо
     
  2. Mika0x65

    Mika0x65 New Member

    Blog Posts:
    0
    Joined:
    Jul 30, 2005
    Messages:
    1,384
    Использовать общую память? Метод чреватый, но если никто лучше не предложит...
     
  3. pluton

    pluton New Member

    Blog Posts:
    0
    Joined:
    Feb 8, 2007
    Messages:
    66
    Location:
    Odessa
    то есть в shmem передавать параметры?
    значит, в самих сигналах нет возможности передавать параметры?
     
  4. rei3er

    rei3er maxim

    Blog Posts:
    0
    Joined:
    Jan 15, 2007
    Messages:
    917
    Location:
    minsk
    pluton
    использовать SA_SIGINFO при вызове sigaction()
    тогда сигнатура обработчика будет иметь вид
    Code (Text):
    1. void hadler(int signal, siginfo_t * info, void * context);
    man 2 sigaction
    генерировать сигнал нужно через sigqueue()
    man 2 sigqueue
    размер передаваеммых данных ограничен sizeof(void*) байтами