[ 
https://issues.apache.org/jira/browse/PROTON-1064?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16242718#comment-16242718
 ] 

ASF subversion and git services commented on PROTON-1064:
---------------------------------------------------------

Commit 51cda9d5d50059d1cfe7af57ec4bfb2e2ab1e70e in qpid-proton's branch 
refs/heads/master from [~aconway]
[ https://git-wip-us.apache.org/repos/asf?p=qpid-proton.git;h=51cda9d ]

PROTON-1064: [ruby] New Container with native ruby IO

Updated all examples and tests to use new container, old Reactor::Container
still in place, will be removed or re-implemented over the new container.

- Based on ConnectionDriver, wrapper for pn_connection_driver_t
- Native polling with standard ruby IO.select()
- Thread-friendly: no blocking IO in C code, all in ruby
- connect/listen use standard TCPSocket/TCPServer
- connect_with/listen_with can use any type of IO socket object


> ruby: native IO based on connection_driver.c 
> ---------------------------------------------
>
>                 Key: PROTON-1064
>                 URL: https://issues.apache.org/jira/browse/PROTON-1064
>             Project: Qpid Proton
>          Issue Type: Improvement
>          Components: ruby-binding
>    Affects Versions: 0.11.0
>            Reporter: Alan Conway
>            Assignee: Alan Conway
>             Fix For: proton-c-0.19.0
>
>
> Refactor ruby binding to use a native Ruby IO driver with the C 
> pn_connection_driver for AMQP protocol support. 
> Ruby ConnectionDriver - drive a single connection, single threaded
> - Use any ruby IO subclass
> - Works with native Ruby polling primitives
> - Avoids Ruby threading issue with GVL (all IO is done in Ruby) 
> - Thread safe function injection for MT use.
> Client/server examples using native ruby connect,  multi-threaded broker 
> example using ruby listen. 



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to