Comments (3)
Hi Hannes,
That's a good point.Originally, I had tasks automatically disable after last iteration. I should have kept it that way...
setIterations is just a setter method and should not control the execution logic. Next thing you know we will need a setIterationsDelayed() method if immediate execution is not needed.
Maybe I should just go back to that option: it is clean, takes less code and gives programmer explicit responsibility to reactivate the task if s/he so desires... What do you think?
So proposal is to go back to:void Task::setIterations(long aIterations) {
iSetIterations = iIterations = aIterations;
}Drop disableOnLastIteration method altogether, and have the tasks auto-disable after last iteration always.
What do you think?
Anatoli
from taskscheduler.
Fixed in the latest push in the master branch.
I will create a separate branch for a version which always disables task on last iteration
from taskscheduler.
Hi Anatoli,
Hmmmmmmmm, this is a question of design, what you expect from your tool.
I think you have the power and decide the direction where this should go. I don't think that a branch would be a good Idea. Makes it too complicated to decide and therefore less attractive (I think).
Actually Me as a user, I could perfectly live with the variant that a finished Task is disabled automatically. Particularly because you introduced the restart()
methods. Since those exist, the cases where you have to change the iterations are quite special cases that do not happen too often.
The only important thing is, that the documentation is consistent with the functionality of the code and that the promised functionality runs flawlessly.
Further more, if it saves some Bytes, go for it!
Hannes
PS.: the good documentation was one of the reasos why I started to work with your library formerly.
from taskscheduler.
Related Issues (20)
- ESP32 dual core usage HOT 2
- V3.7.0 kills ESP32 WiFi HOT 2
- Scheduler not executing on ESP8266 HOT 3
- fluently change task interval, within another tasks periodicity HOT 5
- Least possible scheduling time HOT 9
- Set the core where a task execute HOT 2
- Declare task to run with delay HOT 2
- Keep trying if 'onEnable' fails HOT 8
- Method to get the name of the Callback registered in the Task HOT 7
- Async Webserver problem HOT 10
- esp32-c3 freezing after for tasks over 5800ms with _TASK_SLEEP_ON_IDLE_RUN. Regular esp32 works fine. HOT 2
- Library Suggestion HOT 1
- TaskScheduler Task Callbacks With OO in Callback HOT 2
- ODR Violation With Multiple Uses of TaskScheduler Throughout a Project HOT 1
- The banner link in README.md isn't working. HOT 1
- Compilation error when try to warp TaskScheduler's Task and execute() in a class HOT 2
- `_TASK_STD_FUNCTION` should be for everyone.
- enableDelayed() calls Callback immediately HOT 2
- C++ compiler warning: compound assignment with 'volatile'-qualified left operand is deprecated HOT 14
- "multiple definition of" linker errors if TaskScheduler.h included in multiple header/source files HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from taskscheduler.