Guest User

Untitled

a guest
Jul 15th, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.52 KB | None | 0 0
  1. #!/usr/bin/ruby
  2.  
  3. pid = fork do
  4. def find_order
  5. # check for order and return one if found
  6. end
  7.  
  8. monitor = Fiber.new do
  9. # Keep checking
  10. loop do
  11. # check for new orders in a loop
  12. order = find_order
  13.  
  14. # When one is found
  15. if order.found?
  16. # Pass the order to handle Fiber
  17. handle.resume order
  18. end
  19.  
  20. # Wait 5 minutes
  21. sleep 60*5
  22. end
  23. end
  24.  
  25. handle = Fiber.new do |order|
  26. # handle it here... then resume monitoring
  27. monitor.resume
  28. end
  29. end
  30.  
  31. Process.detach(pid)
Add Comment
Please, Sign In to add comment