Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

read_timeout not working #73

Open
wf5w opened this issue Aug 15, 2022 · 4 comments
Open

read_timeout not working #73

wf5w opened this issue Aug 15, 2022 · 4 comments

Comments

@wf5w
Copy link

wf5w commented Aug 15, 2022

I am running with: ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux-gnu] on Linux Mint 20.3

I have the following code snippet, but here is what I would expect: I would expect that after say 250 ms, that if there was no input then an error would be produced. EIO? but if a character came then the loop would continue. What is actually happening is nothing, it just hangs:

bytes = []

begin
  sp.read_timeout = 250
  puts "read timeout is set to: #{sp.read_timeout}\n"

  while 1
   bytes << sp.getc
   print bytes.last
    if bytes.last == 0xFD
      break
    end
  end
rescue => e
  unless e.class == Errno::EIO
    puts error.inspect
  end
end

puts "\n\nreceived: #{bytes.join('')}"
@sumitbirla
Copy link

I am also having this problem. Were you able to solve this?

@wf5w
Copy link
Author

wf5w commented Oct 28, 2022 via email

@wf5w
Copy link
Author

wf5w commented Jan 28, 2023

Well ok then,

I would say this gem is Useless for anyone doing serious work.
on to python I guess or C

@tenderlove
Copy link
Collaborator

Please try this gem. It's meant as a replacement. You can use regular Ruby IO method calls like wait_readable (which takes a timeout).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants