mirror of
https://github.com/InsanusMokrassar/krontab.git
synced 2024-11-22 00:03:55 +00:00
commit
5ef6134d9f
@ -1,5 +1,9 @@
|
||||
# Changelog
|
||||
|
||||
## 2.6.0
|
||||
|
||||
* Fix of `doOnceTz` behaviour: now it will use local time as utc time to get next waking up time
|
||||
|
||||
## 2.5.1
|
||||
|
||||
* Add cleaning up of incoming template, which must remove all malformed parts from string template (fix of [#126](https://github.com/InsanusMokrassar/krontab/issues/126))
|
||||
|
@ -36,5 +36,5 @@ androidx_work_version=2.10.0
|
||||
|
||||
## Common
|
||||
|
||||
version=2.5.1
|
||||
android_code_version=43
|
||||
version=2.6.0
|
||||
android_code_version=44
|
||||
|
@ -35,6 +35,8 @@ suspend inline fun <T> KronScheduler.doOnceLocal(block: (DateTime) -> T): T = do
|
||||
/**
|
||||
* Execute [block] once at the [KronScheduler.next] time and return result of [block] calculation.
|
||||
*
|
||||
* WARNING!!! This method will use local time instead of utc
|
||||
*
|
||||
* WARNING!!! If you want to launch it in parallel, you must do this explicitly.
|
||||
*
|
||||
* WARNING!!! In case if [KronScheduler.next] of [this] instance will return null, [block] will be called immediatelly
|
||||
@ -42,7 +44,7 @@ suspend inline fun <T> KronScheduler.doOnceLocal(block: (DateTime) -> T): T = do
|
||||
suspend inline fun <T> KronScheduler.doOnceTz(noinline block: suspend (DateTimeTz) -> T): T {
|
||||
val time = when (this) {
|
||||
is KronSchedulerTz -> nextOrNowWithOffset()
|
||||
else -> nextOrNow().local
|
||||
else -> nextTimeZoned() ?: DateTimeTz.nowLocal()
|
||||
}
|
||||
delay((time - DateTimeTz.nowLocal()).millisecondsLong)
|
||||
return block(time)
|
||||
|
Loading…
Reference in New Issue
Block a user