Async: add AsyncLoop bounds tracker

This commit is contained in:
2025-09-10 11:06:29 -04:00
parent 1b6b12256d
commit 4143541adf
+30
View File
@@ -0,0 +1,30 @@
#ifndef ASYNCHRONOUS_LOOP_H
#define ASYNCHRONOUS_LOOP_H
#include <atomic>
namespace smo {
class AsynchronousLoop
{
public:
AsynchronousLoop(
unsigned int nTotal, unsigned int nSucceeded=0, unsigned int nFailed=0)
: nTotal(nTotal), nSucceeded(nSucceeded), nFailed(nFailed)
{
}
~AsynchronousLoop(void);
bool isComplete(void) const
{
return nSucceeded + nFailed == nTotal;
}
public:
std::atomic<unsigned int> nTotal, nSucceeded, nFailed;
};
} // namespace smo
#endif