diff options
| author | Douglas Rumbaugh <dbr4@psu.edu> | 2024-01-31 16:00:12 -0500 |
|---|---|---|
| committer | Douglas Rumbaugh <dbr4@psu.edu> | 2024-01-31 16:00:12 -0500 |
| commit | e4a7d2d5c7464fe97ab7e37c2b0b73c32b5e8b17 (patch) | |
| tree | aa6f394410dc9ba5110b830f3a5ca6ccb6c2814e /include | |
| parent | 27d36dd9a68e4cf454be2ca7877ece0a34c3e929 (diff) | |
| download | dynamic-extension-e4a7d2d5c7464fe97ab7e37c2b0b73c32b5e8b17.tar.gz | |
Possibly fixed epoch retirement sync error
Diffstat (limited to 'include')
| -rw-r--r-- | include/framework/DynamicExtension.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/include/framework/DynamicExtension.h b/include/framework/DynamicExtension.h index a10831e..abe3839 100644 --- a/include/framework/DynamicExtension.h +++ b/include/framework/DynamicExtension.h @@ -384,11 +384,15 @@ private: do { if (epoch->retirable()) { + m_epoch_retire_lk.lock(); + if (!epoch->retirable()) { + m_epoch_retire_lk.unlock(); + continue; + } break; } } while (true); - m_epoch_retire_lk.lock(); /* remove epoch from the framework's map */ m_epochs.erase(epoch->get_epoch_number()); |