ultimatepp/reference/ParallelProgress/main.cpp
cxl cb7f940314 .reference
git-svn-id: svn://ultimatepp.org/upp/trunk@14286 f0d560ea-af0d-0410-9eb7-867de7ffcac7
2020-04-09 12:00:19 +00:00

19 lines
390 B
C++

#include <CtrlLib/CtrlLib.h>
using namespace Upp;
GUI_APP_MAIN
{
Progress pi("Working on many items at once...", 100);
std::atomic<int> ii(0);
CoDo([&] {
for(int i = ii++; i < 100; i = ii++) {
for(int q = 0; q < 1000; q++) {
if(pi.Canceled()) // ideally call Canceled every 1-10ms
return;
Sleep(1); // work simulation
}
pi.Step();
}
});
}