Ask a Question related to UNIX Programming, Design and Development.

  1. #1

    Default Posix queues

    I have problems with removing queues. Manual says that mq_unlink does not
    remove named queue before all references are released. While developing my
    process, it may happen that mq_close is not not called in every thread which
    has opened queue... Are those references to queue removed when process is
    terminated, even if mq_close was not called ?

    And manual says:
    However, the mq_unlink() call need not block until all references have
    been closed; it may return immediately.

    What does these 'need not' and 'may return' mean? Seems like my mq_unlink
    call blocks.

    Now when I call mq_open with flags O_RDWR | O_CREAT, seems like also open
    call blocks, is this because mq_unlink was called and queue is not actually
    yet removed ?

    Solaris 8.0

    BR,
    Rami


    Rami Guest

  2. Similar Questions and Discussions

    1. POSIX::ctermid()
      Hi, I just installed a fresh 5.8.3 and noticed that POSIX::ctermid() does not seem to work (all tests were reported as successful during "make...
    2. ANNOUNCE: POSIX::RT::Semaphore 0.01
      POSIX::RT::Semaphore is a Perl interface to POSIX.1b (Realtime) semaphores, at least as supported by your system. ;-) RT semaphores are objects...
    3. POSIX::getchar
      What am I doing wrong? Here are 3 attempts at trying to use getchar. It seems I am following the Usage, but I guess not. $ perl -e 'use...
    4. lpr to remote print queues
      I have 4.3.3 on two identical H70's. Each has a remote print queue defined that points to the same fax server (which is running W2K). If I use 'lpr...
    5. Standard Posix
      Hi! I'am working on Solaris 5.8. My bosss prohibited using comand compress because he said "It's not standard" , but wich standard ? He didn't say...
  3. #2

    Default Re: Posix queues

    On Tue, 15 Jul 2003 07:31:35 GMT, Rami <oo.oo@oo.com> wrote:
    > I have problems with removing queues. Manual says that mq_unlink does not
    > remove named queue before all references are released. While developing
    > my
    > process, it may happen that mq_close is not not called in every thread
    > which
    > has opened queue... Are those references to queue removed when process is
    > terminated, even if mq_close was not called ?
    Yes. Open mqs are closed when process exits.
    >
    > And manual says:
    > However, the mq_unlink() call need not block until all references
    > have
    > been closed; it may return immediately.
    >
    > What does these 'need not' and 'may return' mean? Seems like my mq_unlink
    > call blocks.
    The word "may" "describes a feature or behavior that is optional for an
    implementation." So, as a programmer, you can't depend on it being one way
    or the other.
    >
    > Now when I call mq_open with flags O_RDWR | O_CREAT, seems like also open
    > call blocks, is this because mq_unlink was called and queue is not
    > actually
    > yet removed ?
    That is a possibility. Standard specifically says this may happen.
    >
    > Solaris 8.0
    >
    > BR,
    > Rami
    >
    >
    >

    Marc Rochkind Guest

Posting Permissions

  • You may not post new threads
  • You may post replies
  • You may not post attachments
  • You may not edit your posts

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 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139