Sha256: c58a2491c84d9157683c884d48b2034617e9e061db0af9ad154295bc53f86c5b
Contents?: true
Size: 862 Bytes
Versions: 4
Compression:
Stored size: 862 Bytes
Contents
require_relative '../lib/async/await' require 'async/io' require 'async/io/tcp_socket' require 'pry' class Echo include Async::Await include Async::IO async def handle(peer, address) data = peer.gets peer.puts("#{data} #{Time.now}") ensure peer.close end async def server puts "Binding server..." server = TCPServer.new("127.0.0.1", 9009) handle(*server.accept) ensure server.close rescue nil end async def client puts "Client connecting..." client = TCPSocket.new("127.0.0.1", 9009) client.puts("Hello World!") response = client.gets puts "Server said: #{response}" ensure client.close rescue nil end async def run puts "Creating server..." server puts "Creating client..." client puts "Run returning..." end end puts "Starting echo..." echo = Echo.new echo.run puts "Echo finished :)"
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
async-await-0.5.0 | examples/echo.rb |
async-await-0.4.0 | examples/echo.rb |
async-await-0.3.0 | examples/echo.rb |
async-await-0.2.0 | examples/echo.rb |