rbbt-util 5.19.25 → 5.19.26

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0051b49cfdacc0a28519e8a3e1c1a76f3a96e47d
4
- data.tar.gz: 7ddb918684cfbbd96e3e8736f67fddbfcf07ed0b
3
+ metadata.gz: 669dc64f2ded00cb9c68d0dd097daea6e16d7553
4
+ data.tar.gz: 0d713150486dae17078a6ac1b40a3e47ed6c1fe2
5
5
  SHA512:
6
- metadata.gz: 51fe56580c0e775d4dd28a60e56c938ac2d7d472a7dc838b559f9d9e1325c58cc5e7312b2aa8a584ed31f6409f8f1a6a03ffbd0ee3b40e81e05a5f3ceb09c657
7
- data.tar.gz: b9ea99572312f3fd7af186535d080a821843ae0f3589d5727e02435dad96cf083805fb5651d92d4924286b3db81e120549e52d1faafe5ee8ca5e3f6be8eaa15d
6
+ metadata.gz: 6f5e2fef698efb2fce69cf438f111cb76f6d2bb3e5714d1a318a73cdc6d99bce4d88cc11c2beecbf51e6f49278eb90a4886862325c6e7600281747c8500067f2
7
+ data.tar.gz: 2ef394d6ed09abc4295a5dcc65f420619dbb8d90d3966780dbd3091c558d2581c3c2cbd739362c0df7a09bed70e2d6eab5133423e5c153f3376a23188a8a4351
@@ -55,34 +55,34 @@ module Persist
55
55
  def write_and_read
56
56
  lock_filename = Persist.persistence_path(persistence_path + '.write', {:dir => TSV.lock_dir})
57
57
  #mutex.synchronize do
58
- Misc.lock(lock_filename) do
59
- write if closed? or not write?
60
- res = begin
61
- yield
62
- ensure
63
- read
64
- end
65
- res
66
- end
58
+ Misc.lock(lock_filename) do
59
+ write if closed? or not write?
60
+ res = begin
61
+ yield
62
+ ensure
63
+ read
64
+ end
65
+ res
66
+ end
67
67
  #end
68
68
  end
69
69
 
70
70
  def write_and_close
71
71
  lock_filename = Persist.persistence_path(persistence_path + '.write', {:dir => TSV.lock_dir})
72
72
  #mutex.synchronize do
73
- Misc.lock(lock_filename, true) do
74
- write if closed? or not write?
75
- res = begin
76
- yield
77
- rescue Exception
78
- Log.exception $!
79
- raise $!
80
- ensure
81
- close
82
- end
83
- res
84
- end
73
+ Misc.lock(lock_filename, true) do
74
+ write if closed? or not write?
75
+ res = begin
76
+ yield
77
+ rescue Exception
78
+ Log.exception $!
79
+ raise $!
80
+ ensure
81
+ close
82
+ end
83
+ res
85
84
  #end
85
+ end
86
86
  end
87
87
 
88
88
  def read_and_close
@@ -7,12 +7,17 @@ module TCCache
7
7
  end
8
8
 
9
9
  def cache(key)
10
- if self.include? key
11
- return self[key]
12
- else
13
- self.write_and_read do
14
- self[key] = yield
15
- end
10
+
11
+ self.read_and_close do
12
+ return self[key] if self.include? key
16
13
  end
14
+
15
+ value = yield
16
+
17
+ self.write_and_close do
18
+ self[key] = value
19
+ end
20
+
21
+ value
17
22
  end
18
23
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbbt-util
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.19.25
4
+ version: 5.19.26
5
5
  platform: ruby
6
6
  authors:
7
7
  - Miguel Vazquez