[ 
https://issues.apache.org/jira/browse/QPID-1982?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12797149#action_12797149
 ] 

Alan Conway commented on QPID-1982:
-----------------------------------

We already have portable constructs for this type of notification.

sys::PollableCondition is a low-level, portable mechanism that can be added to 
a Poller and allows you to wake a poller thread by setting the condition.

sys::PollableQueue template is built on top of pollable condition. It allows 
dispatch to poller threads via an in-memory queue. 

I suspect PollableQueue is what's needed: replacing the use of ::write with a 
push to the pollable queue. If not a new portable mechansim can probably be 
built based on PollableCondition.

> QMF ResilientConnection notifyFd feature portability
> ----------------------------------------------------
>
>                 Key: QPID-1982
>                 URL: https://issues.apache.org/jira/browse/QPID-1982
>             Project: Qpid
>          Issue Type: Improvement
>          Components: Qpid Managment Framework
>    Affects Versions: 0.5
>         Environment: Windows
>            Reporter: Steve Huston
>
> The QMF's C++ qmfcommon ResilientConnection class has a setNotifyFd (int fd) 
> method. The docs say this can receive a file descriptor that is written on 
> when certain events take place, supposedly so the other end of the channel 
> can listen, select, etc. and be notified of some event.
> This construct isn't portable, both because of the datatype of the fd (int is 
> not necessarily a legit handle type everywhere) and because the code assumes 
> a write() will work. The code can be abstracted out to get rid of the write() 
> easily enough, but what is the usage for this facility? There are no calls to 
> setNotifyFd() that I can find outside of the library containing the 
> implementation. So I can't tell if this is something that can be replaced by 
> qpid::sys::PollableCondition or not.
> What is the use case for this, and how can we make this portable? Different 
> IPC type? Callback to some private hook?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscr...@qpid.apache.org

Reply via email to