Hi again,

I've been happily going along with Ruby when I get the chance to play with it. I'm curious if any of you have heard of or worked with EventMachine. I read that it's much more efficient, stable, etc. than using threads. Are threads that bad? What's necessarily 'wrong' with them? I'd be glad to use EventMachine if I could figure out how you'd "pass" it through another class. Like, for example...

With threads:
Code:
server = TCPServer.new(8889)
threads = []

  while (session = server.accept)
    threads << Thread.new(session) { |s|
      connect = Connect.new(s)
      Thread.current['client'] = connect
      connect.login                       }
  end
The session gets passed to the "Connect" class, and I can still use "s.puts" or "s.print" and such.

With EventMachine:
Code:
 EventMachine::run {
  EventMachine::start_server "192.168.0.197", 8889, Server
                  }
That passes it to the Server module. I can use "send_data" in it to send strings and such to the connected client, but I can't quite figure out how to call an external class that can use the "send_data" command.

I'm contented with my threads so far, and even if EventMachine looks to be clean and sleek, if they're not going to bring about the end of the world or something, then I'd like to just stick with what I've already done... but I'm not so stubborn that I won't jump ship if it's sinking. d:

Thanks!