Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LeanTask (mini task), new methods for tasks #35

Merged
merged 16 commits into from
Jun 30, 2022
Merged

LeanTask (mini task), new methods for tasks #35

merged 16 commits into from
Jun 30, 2022

Conversation

Laxilef
Copy link
Contributor

@Laxilef Laxilef commented Jun 29, 2022

Inspired by the work of @dbuezas (#20), I added LeanTask to the current version of the scheduler and added some features.
This helps to really save RAM. On working existing projects, even 6 tasks completely clogged the heap, after which the esp8266 crashed.
The PR includes updating the documentation. Added a table with LeanTask testing results to the README.
I also added new examples. You can review them before merging branches (if you do).

Briefly:

  1. Added AbstractTask with new methods: isEnabled, enable, disable, setInterval, getInterval
  2. Task and LeanTask inherit AbstractTask
  3. Work with the cont library has been moved to Task
  4. "tramponline" function moved: static void SchedullerClass::trampoline
  5. ::loop() can now be used (although not recommended)
  6. Little refactoring
  7. Readme updated
  8. Version updated to 0.3 :)

Copy link
Owner

@nrwiersma nrwiersma left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good so far. A couple comments.

.gitignore Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
examples/subfiles_simple/BlinkTask.h Outdated Show resolved Hide resolved
examples/subfiles_simple/MemTask.h Outdated Show resolved Hide resolved
examples/subfiles_simple/PrintTask.h Outdated Show resolved Hide resolved
library.json Outdated Show resolved Hide resolved
library.properties Outdated Show resolved Hide resolved
src/Scheduler.cpp Outdated Show resolved Hide resolved
src/Scheduler.h Outdated Show resolved Hide resolved
src/Scheduler.h Outdated Show resolved Hide resolved
Laxilef and others added 9 commits June 29, 2022 23:04
Co-authored-by: Nicholas Wiersma <nick@wiersma.co.za>
Co-authored-by: Nicholas Wiersma <nick@wiersma.co.za>
Co-authored-by: Nicholas Wiersma <nick@wiersma.co.za>
Co-authored-by: Nicholas Wiersma <nick@wiersma.co.za>
Co-authored-by: Nicholas Wiersma <nick@wiersma.co.za>
Co-authored-by: Nicholas Wiersma <nick@wiersma.co.za>
Co-authored-by: Nicholas Wiersma <nick@wiersma.co.za>
Co-authored-by: Nicholas Wiersma <nick@wiersma.co.za>
@Laxilef Laxilef requested a review from nrwiersma June 29, 2022 20:53
@Laxilef
Copy link
Contributor Author

Laxilef commented Jun 29, 2022

Hello

Done.

Copy link
Owner

@nrwiersma nrwiersma left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🎉

@nrwiersma nrwiersma merged commit cae2d28 into nrwiersma:master Jun 30, 2022
@Laxilef
Copy link
Contributor Author

Laxilef commented Jul 1, 2022

When can we expect a release? :)

@nrwiersma
Copy link
Owner

I am away at the moment and will be back mid next week. Alternatively you can create a PR bumping the version number and I can do the rest on my phone when I get a chance this weekend. Up to you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants