Class: Pindo::TaskSystem::TaskResources::GlobalExclusiveResourceType
- Inherits:
-
ResourceType
- Object
- ResourceType
- Pindo::TaskSystem::TaskResources::GlobalExclusiveResourceType
- Defined in:
- lib/pindo/module/task/task_resources/types/global_exclusive_resource.rb
Overview
全局互斥资源类型
特性:
-
任何时候只能有一个任务占用
-
任意两个实例都冲突
适用资源:
-
Keychain(系统级密钥链,全局唯一)
-
Certificate(证书操作,全局互斥)
Instance Attribute Summary
Attributes inherited from ResourceType
Instance Method Summary collapse
-
#conflicts?(instance1, instance2) ⇒ Boolean
检查两个资源实例是否冲突 规则:永远冲突(全局互斥).
-
#initialize(name) ⇒ GlobalExclusiveResourceType
constructor
A new instance of GlobalExclusiveResourceType.
Methods inherited from ResourceType
#directory_based?, #global_exclusive?, #global_shared?, #to_s
Constructor Details
#initialize(name) ⇒ GlobalExclusiveResourceType
17 18 19 |
# File 'lib/pindo/module/task/task_resources/types/global_exclusive_resource.rb', line 17 def initialize(name) super(name, :global_exclusive) end |
Instance Method Details
#conflicts?(instance1, instance2) ⇒ Boolean
检查两个资源实例是否冲突规则:永远冲突(全局互斥)
27 28 29 |
# File 'lib/pindo/module/task/task_resources/types/global_exclusive_resource.rb', line 27 def conflicts?(instance1, instance2) true # 全局互斥,任意两个实例都冲突 end |