Hi,

I am not sure what you are trying to do with xdispatch.  If you are
using and external loop and managing your own IO, you can bypass the
low level Proton IO primitives and access the proton engine directly.
This is how Qpid uses Proton.

If you were using the driver.c mechanism, please take a look at
PROTON-658.  This and the main messenger loop show how the
selectors/selectables can be used within Proton.  pn_selector_select()
is pretty central to the completion port model on windows.

You may find that if you use Windows accept and connect instead of
pn_accept and pn_connect you can keep your descriptors completely
outside the completion port model and use things as you did.  If not,
perhaps we can find another way to isolate your sockets from the
completion port implementation.

The Windows completion port implementation is designed to provide a
highly scalable throughput in a constrained (mostly) single thread
model, but remain lightweight for small clients.  Central to that is
the integration with selectors and selectables.  But it can't be
everything to everybody.

On Thu, Sep 4, 2014 at 8:33 AM, Bozo Dragojevic <bo...@digiverse.si> wrote:
> Hi!
>
> Just a headsup. This commit breaks pn_accept() for me, it fails all the
> time. I'm not using selectors but drive the socket
> with libdispatch (from xdispatch) with a custom driver.
>
> If I revert this commit the trunk is useable. I'll dig deeper what is going
> on, I was focusing on getting SSL to work on windows.
>
> Cheers,
> Bozzo
>
>
> On 4. 09. 14 04:12, ASF subversion and git services (JIRA) wrote:
>>
>>      [
>> https://issues.apache.org/jira/browse/PROTON-640?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14120849#comment-14120849
>> ]
>>
>> ASF subversion and git services commented on PROTON-640:
>> --------------------------------------------------------
>>
>> Commit 1622394 from cliffjan...@apache.org in branch 'proton/trunk'
>> [ https://svn.apache.org/r1622394 ]
>>
>> PROTON-640 Windows IO completion port implementation for pn_io and
>> pn_selectable classes
>>
>>> IO completion port Windows IO for Proton
>>> ----------------------------------------
>>>
>>>                  Key: PROTON-640
>>>                  URL: https://issues.apache.org/jira/browse/PROTON-640
>>>              Project: Qpid Proton
>>>           Issue Type: Improvement
>>>           Components: proton-c
>>>     Affects Versions: 0.7
>>>          Environment: Windows
>>>             Reporter: Cliff Jansen
>>>             Assignee: Cliff Jansen
>>>              Fix For: 0.8
>>>
>>>
>>> Provide a native IO completion port layer similar to the C++ QPID version
>>> for Proton.
>>
>>
>>
>> --
>> This message was sent by Atlassian JIRA
>> (v6.3.4#6332)
>
>

Reply via email to