Sha256: d93a402e36980e967d6d74e621cdd52b60400dbfc85be933913664d15cb7ecf7
Contents?: true
Size: 813 Bytes
Versions: 1
Compression:
Stored size: 813 Bytes
Contents
module Celluloid # Asked to do task-related things outside a task class NotTaskError < StandardError; end # Trying to resume a dead task class DeadTaskError < StandardError; end # Tasks are interruptable/resumable execution contexts used to run methods class Task class TerminatedError < StandardError; end # kill a running task # Obtain the current task def self.current Thread.current[:celluloid_task] or raise NotTaskError, "not within a task context" end # Suspend the running task, deferring to the scheduler def self.suspend(status) Task.current.suspend(status) end # Create a new task def initialize(type) @type = type @status = :new end end end require 'celluloid/tasks/task_fiber' require 'celluloid/tasks/task_thread'
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
celluloid-0.13.0.pre | lib/celluloid/tasks.rb |