concurrent_worker 0.4.4 → 0.4.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7e17ddb27f442c6babe1733fb794b8870bc153a6b9091a7f4b4bc154da9d276b
4
- data.tar.gz: f54a309bf21e32ad198b06732d31434e9846e9c456e6286c826f8acdea4c432c
3
+ metadata.gz: bec91c2df6019b48f49e87896bb522865f63164f212573fecaf3edf7d154128c
4
+ data.tar.gz: 8be1f1412644a4bb48a45280a7db01027d696d17714e755a869d0ebc40b5ffaf
5
5
  SHA512:
6
- metadata.gz: 1c65980f5b3816eea2ce575a0334c57079d7ef77067dc5413c196ea662411a636c4bbd0728bd43771241c6b73fe3d34cfef2d973d64e6e891831d81bac1c26b2
7
- data.tar.gz: c00dfd2621584625792b6698905a336a9ea2c39e42f9b57e05fe85fa46718f86e703f7afbb6e2e3d566f149e8684f2e81ddb613545ab3854d45f40fd6b957359
6
+ metadata.gz: 7cac8c9c1aac7d2eea728cf837f960abad0740aef71194332e568af19dd5b5d12eb7b8dd1005304e8a1330d37c74255da90fc7e4f690e4176e250c27857c43ef
7
+ data.tar.gz: a5298094afab622a6c99bcc789787ad62870bb518eee180e3b202716610e621ba9f9eb35c94fbc6aa5a47cccc72fdf4b4f3b89d798be3b363a413e0fc9f22f86
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- concurrent_worker (0.4.4)
4
+ concurrent_worker (0.4.5)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -1,3 +1,3 @@
1
1
  module ConcurrentWorker
2
- VERSION = "0.4.4"
2
+ VERSION = "0.4.5"
3
3
  end
@@ -34,7 +34,11 @@ module ConcurrentWorker
34
34
  def available_worker
35
35
  delete_if{ |w| w.queue_closed? && w.join }
36
36
  deploy_worker if need_new_worker?
37
- @ready_queue.pop
37
+ if @snd_queue_max > 0
38
+ @ready_queue.pop
39
+ else
40
+ sort_by{ |w| w.req_counter.size }.first
41
+ end
38
42
  end
39
43
 
40
44
  def set_snd_thread
@@ -95,7 +99,7 @@ module ConcurrentWorker
95
99
  def worker_pool_com_setting(w)
96
100
  w.add_callback do |*args|
97
101
  @recv_queue.push([args])
98
- @ready_queue.push(w)
102
+ @ready_queue.push(w) if @snd_queue_max > 0
99
103
  end
100
104
 
101
105
  w.add_retired_callback do
@@ -104,11 +108,7 @@ module ConcurrentWorker
104
108
  end
105
109
  end
106
110
 
107
- if w.snd_queue_max == 0
108
- 2.times do
109
- @ready_queue.push(w)
110
- end
111
- else
111
+ if w.snd_queue_max > 0
112
112
  w.snd_queue_max.times do
113
113
  @ready_queue.push(w)
114
114
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: concurrent_worker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.4
4
+ version: 0.4.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - dddogdiamond
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-05-17 00:00:00.000000000 Z
11
+ date: 2019-05-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler