Tôi đang xem xét sử dụng rubygem twitter dòng EventMachine được hỗ trợ để theo dõi và ghi lại các tweet. Tôi là người mới đối với toàn bộ điều lập trình. Làm thế nào tôi có thể nói nếu bất kỳ xử lý tôi đang làm trong vòng lặp sự kiện của tôi là nguyên nhân khiến tôi bị tụt hậu? Có cách nào dễ dàng để kiểm tra không?EventMachine - làm thế nào bạn có thể biết nếu bạn đang tụt lại phía sau?
Trả lời
EventMachine có phương thức EventMachine::Queue.size
cho phép bạn xem nhanh hàng đợi hiện tại và nhận được ý tưởng lớn như thế nào.
Bạn có thể add_periodic_timer()
và, trong trường hợp đó, nhận được kích thước của hàng đợi và in nó.
Nếu số không nhận được nhỏ hơn, bạn sẽ ở mức chẵn lẻ. Nếu nó đang tăng lên, bạn đang tụt lại phía sau.
Chính xác những gì tôi cần. Cảm ơn bạn! – makenai
Có vẻ như kích thước không phải là một phương pháp lớp học nên bạn không thể gọi nó như được viết ở đây? 'EventMachine :: Queue.size' Đây có phải là chỉ cho hàng đợi tùy chỉnh (một thể hiện của lớp đó), hoặc nó có thể được sử dụng để có được kích thước hàng đợi của lò phản ứng chính không? Tôi là loại mới để EventMachine vì vậy cảm ơn sự giúp đỡ. –
Phương pháp này dành cho hàng đợi tùy chỉnh không phải là hàng đợi lò phản ứng chính. Trên thực tế, không có cách nào để có được số đếm chính xác (https://groups.google.com/forum/?fromgroups#!topic/eventmachine/7CAkYGZnwzk). Bắt độ trễ thường là một lựa chọn tốt xem câu trả lời của dj2 – trcarden
Bạn có thể xác định độ trễ bằng cách sử dụng bộ hẹn giờ định kỳ và in thời gian đã trôi qua. Nếu bạn đang sử dụng một bộ đếm thời gian 1 giây, bạn sẽ có khoảng 1 giây trôi qua, nếu nó lớn hơn bạn biết có bao nhiêu bạn đang làm chậm lò phản ứng.
@last = Time.now.to_f
EM.add_periodic_timer(1) do
puts "LATENCY: #{Time.now.to_f - @last}"
@last = Time.now.to_f
end
- 1. Làm thế nào bạn có thể biết nếu iphone bị khóa?
- 2. Làm thế nào bạn có thể sử dụng php xdebug nếu bạn sử dụng NAT sau tường lửa?
- 3. Bạn có luôn ĐỔI MỚI sau POST? Nếu có, Làm thế nào để bạn quản lý nó?
- 4. Làm thế nào để biết nếu bạn có nhiều cài đặt Django của
- 5. Làm thế nào bạn có thể cho biết ô nào trong Tmux được tập trung?
- 6. Cho biết bạn đang sử dụng thẻ git nào?
- 7. Làm thế nào để bạn đặt Image.Source trong Silverlight (Mã phía sau)
- 8. Thanh trạng thái trong Sublime Text 2 có thể cho bạn biết bạn đang ở trong Symbol nào không?
- 9. Javascript có thể biết IP của bạn không?
- 10. Làm thế nào để bạn biết ai đang sửa chữa bản dựng?
- 11. Làm thế nào để bạn nắm bắt ngoại lệ trong một cài đặt EventMachine?
- 12. Trong NSDateComponents, làm thế nào để bạn biết nếu nó là AM hoặc PM?
- 13. Làm cách nào để biết mã của bạn có đang chạy trên iPhone hay iPhone3G không?
- 14. Làm thế nào để bạn thực hiện đặt lại trên một JQuery có thể sắp xếp
- 15. Trong R, làm thế nào bạn có thể biết một chuỗi bao gồm các chuỗi thoát?
- 16. Làm thế nào bạn có thể biết liệu một stit git không còn cần thiết?
- 17. Bạn có thể sử dụng canvas.getContext ('3d') không? Nếu có, làm thế nào?
- 18. Làm cách nào để biết liệu thư viện JavaScript bạn đang sử dụng có phá vỡ mã của bạn sau khi nâng cấp không?
- 19. Nếu bạn không sử dụng dấu chấm (.) Trong các mô hình AngularJS bạn đang làm sai?
- 20. Làm thế nào bạn có thể dừng Visual Studio sắp xếp lại Windows khi gỡ lỗi
- 21. Làm thế nào để bạn thực hiện một div theo sau khi bạn cuộn?
- 22. Bạn có thể kiếm được một công việc nếu bạn biết XHTML, CSS và PHP cơ bản không?
- 23. Làm thế nào bạn có thể cấu hình nowjs?
- 24. Tìm Chế độ xem Backbone.js nếu bạn biết Mô hình?
- 25. Làm thế nào để khởi tạo một ByteBuffer nếu bạn không biết có bao nhiêu byte để phân bổ trước?
- 26. Làm thế nào để thiết lập lại keystores khi bạn không biết mật khẩu của họ?
- 27. Làm thế nào bạn có thể định dạng lại văn bản trong TextMate
- 28. java cách biết nếu bạn đang chạy javaw.exe so với java.exe
- 29. Bạn có thể đặt thuộc tính trên Backbone.js Collections không? Nếu vậy, làm thế nào?
- 30. Làm thế nào bạn có thể buộc biên dịch lại jsps trong JBoss 4.2?
Sẽ thực sự hữu ích nếu bạn cung cấp một mẫu mã đặc trưng cho mã của bạn hiển thị những gì bạn đã thử. –