File tree Expand file tree Collapse file tree 6 files changed +25
-13
lines changed Expand file tree Collapse file tree 6 files changed +25
-13
lines changed Original file line number Diff line number Diff line change @@ -13,7 +13,7 @@ def initialize(count, &block)
13
13
14
14
def update ( time , value , reason )
15
15
if @counter . decrement == 0
16
- @block . call ( )
16
+ @block . call
17
17
end
18
18
end
19
19
end
Original file line number Diff line number Diff line change 1
1
require 'thread'
2
2
3
+ require 'concurrent/obligation'
3
4
require 'concurrent/global_thread_pool'
4
5
require 'concurrent/safe_task_executor'
5
6
Original file line number Diff line number Diff line change
1
+ require 'concurrent/dereferenceable'
1
2
require 'concurrent/event'
2
3
3
4
module Concurrent
Original file line number Diff line number Diff line change @@ -11,20 +11,28 @@ module Obligation
11
11
12
12
# Has the obligation been fulfilled?
13
13
# @return [Boolean]
14
- def fulfilled? ( ) state == :fulfilled ; end
14
+ def fulfilled?
15
+ state == :fulfilled
16
+ end
15
17
alias_method :realized? , :fulfilled?
16
18
17
19
# Has the obligation been rejected?
18
20
# @return [Boolean]
19
- def rejected? ( ) state == :rejected ; end
21
+ def rejected?
22
+ state == :rejected
23
+ end
20
24
21
25
# Is obligation completion still pending?
22
26
# @return [Boolean]
23
- def pending? ( ) state == :pending ; end
27
+ def pending?
28
+ state == :pending
29
+ end
24
30
25
31
# Is the obligation still unscheduled?
26
32
# @return [Boolean]
27
- def unscheduled? ( ) state == :unscheduled ; end
33
+ def unscheduled?
34
+ state == :unscheduled
35
+ end
28
36
29
37
def completed?
30
38
[ :fulfilled , :rejected ] . include? state
Original file line number Diff line number Diff line change
1
+ require 'concurrent/event'
2
+
1
3
module Concurrent
2
4
3
5
module Postable
@@ -37,20 +39,20 @@ def post(*message)
37
39
raise ArgumentError . new ( 'empty message' ) if message . empty?
38
40
return false unless ready?
39
41
queue . push ( Package . new ( message ) )
40
- return true
42
+ true
41
43
end
42
44
43
45
def <<( message )
44
46
post ( *message )
45
- return self
47
+ self
46
48
end
47
49
48
50
def post? ( *message )
49
51
raise ArgumentError . new ( 'empty message' ) if message . empty?
50
52
return nil unless ready?
51
53
ivar = IVar . new
52
54
queue . push ( Package . new ( message , ivar ) )
53
- return ivar
55
+ ivar
54
56
end
55
57
56
58
def post! ( seconds , *message )
@@ -77,14 +79,14 @@ def forward(receiver, *message)
77
79
raise ArgumentError . new ( 'empty message' ) if message . empty?
78
80
return false unless ready?
79
81
queue . push ( Package . new ( message , receiver ) )
80
- return queue . length
82
+ queue . length
81
83
end
82
84
83
85
def ready?
84
86
if self . respond_to? ( :running? ) && ! running?
85
- return false
87
+ false
86
88
else
87
- return true
89
+ true
88
90
end
89
91
end
90
92
Original file line number Diff line number Diff line change @@ -8,13 +8,13 @@ def before_stop(&block)
8
8
raise ArgumentError . new ( 'no block given' ) unless block_given?
9
9
raise Runnable ::LifecycleError . new ( '#before_stop already set' ) if @before_stop_proc
10
10
@before_stop_proc = block
11
- return self
11
+ self
12
12
end
13
13
14
14
protected
15
15
16
16
def before_stop_proc
17
- return @before_stop_proc
17
+ @before_stop_proc
18
18
end
19
19
end
20
20
end
You can’t perform that action at this time.
0 commit comments