MCPcopy Create free account
hub / github.com/apache/incubator-pegasus / unlock

Method unlock

src/runtime/task/task_engine.sim.cpp:185–200  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

183}
184
185void sim_lock_provider::unlock()
186{
187 // ignore locks inside schedulers
188 if (scheduler::is_scheduling())
189 return;
190
191 CHECK_EQ_MSG(::dsn::utils::get_current_tid(),
192 _current_holder,
193 "lock must be locked must current holder");
194
195 if (0 == --_lock_depth) {
196 _current_holder = -1;
197 _sema.signal(1);
198 } else {
199 }
200}
201
202sim_lock_nr_provider::sim_lock_nr_provider(lock_nr_provider *inner_provider)
203 : lock_nr_provider(inner_provider), _sema(1, nullptr)

Callers 5

sasl_mutex_unlock_localFunction · 0.45
unlock_readMethod · 0.45
unlock_writeMethod · 0.45
TESTFunction · 0.45
TESTFunction · 0.45

Calls 2

get_current_tidFunction · 0.85
signalMethod · 0.45

Tested by 2

TESTFunction · 0.36
TESTFunction · 0.36