smart_engine 0.14.0 → 0.15.0

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
  SHA256:
3
- metadata.gz: 912e841987ba6da79b04609e0f86580d900676b10711d5e38b614099782702cf
4
- data.tar.gz: 395c81f467a482cde8042dfb207df5aa70b7a865f317fcd068e110b127dfe95e
3
+ metadata.gz: 571c427f764fe322ccc465dbe90d760ffde9ffa324bd55a15e6046da6a18909f
4
+ data.tar.gz: 446a429d3c440bfa0bc1bc16a3abdb58289810d56bd7eec86b66307c59c5227a
5
5
  SHA512:
6
- metadata.gz: '080a49d84507ca934dcf9435bcbe724cf8146167039e1ebbf0a56343249fbd4c39893a79508a0e08826fb9496eb6a721f5e335a0a9b19149263c8a73c4ebf9bf'
7
- data.tar.gz: 0eb86cfe731f1911969025db50560148858f03d8b8842da9c3bac49fbd3c4dfe74c0c86392438c060c2ec43ff0453da8c9fc3eeed4076bc11c772e59c931ee7c
6
+ metadata.gz: 3493139baf67304edaa0fd7db320987b6ed860efc2d80e393a1baa73d590cd0b63e80e0069430bc3d286f7bcf095161ea51782643792ce0a4f3b8dca4e5e9ce5
7
+ data.tar.gz: 7702c746ab952d345e935a40a51d581f8f2ecb81f8f12c867e295813e74df9f08bd7b7db31b644194fe6e5e428026577c33de2e17e37a1287c2f6dd42781a20e
data/CHANGELOG.md CHANGED
@@ -1,6 +1,10 @@
1
1
  # Changelog
2
2
  All notable changes to this project will be documented in this file.
3
3
 
4
+ ## [0.15.0] - 2022-09-30
5
+ ### Added
6
+ - `SmartCore::Engine::ReadWriteLock#write_owned?` - checking that write lock is owned by current thread or not;
7
+
4
8
  ## [0.14.0] - 2022-09-30
5
9
  ### Added
6
10
  - Read/Write locking mechanizm: `SmartCore::Engine::ReadWriteLock`;
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- smart_engine (0.14.0)
4
+ smart_engine (0.15.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
data/README.md CHANGED
@@ -76,6 +76,9 @@ lock = SmartCore::Engine::ReadWriteLock.new
76
76
  lock.read_sync { ...some-read-op... } # waits for writer
77
77
  lock.read_sync { ...some-read-op... } # waits for writer
78
78
  lock.write_sync { ... some-write-op... } # waits for all readers and current writer
79
+
80
+ # is write_sync lock is owned by current thread?
81
+ lock.write_owned? # true or false
79
82
  ```
80
83
 
81
84
  ---
@@ -2,6 +2,7 @@
2
2
 
3
3
  # @api public
4
4
  # @since 0.14.0
5
+ # @version 0.15.0
5
6
  class SmartCore::Engine::ReadWriteLock
6
7
  # @return [void]
7
8
  #
@@ -28,6 +29,14 @@ class SmartCore::Engine::ReadWriteLock
28
29
  @active_reader = false
29
30
  end
30
31
 
32
+ # @return [Boolean]
33
+ #
34
+ # @api public
35
+ # @since 0.15.0
36
+ def write_owned?
37
+ @write_lock.owned?
38
+ end
39
+
31
40
  # @param block [Block]
32
41
  # @return [Any]
33
42
  #
@@ -6,7 +6,7 @@ module SmartCore
6
6
  #
7
7
  # @api public
8
8
  # @since 0.1.0
9
- # @version 0.14.0
10
- VERSION = '0.14.0'
9
+ # @version 0.15.0
10
+ VERSION = '0.15.0'
11
11
  end
12
12
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: smart_engine
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.14.0
4
+ version: 0.15.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rustam Ibragimov