README.md in rufus-scheduler-3.4.2 vs README.md in rufus-scheduler-3.5.0

- old
+ new

@@ -126,10 +126,11 @@ * [Passenger and rufus-scheduler](http://stackoverflow.com/questions/18108719/debugging-rufus-scheduler/18156180#18156180) * [Passenger and rufus-scheduler (2)](http://stackoverflow.com/questions/21861387/rufus-cron-job-not-working-in-apache-passenger#answer-21868555) * [Passenger in-depth spawn methods](https://www.phusionpassenger.com/library/indepth/ruby/spawn_methods/) * [Passenger in-depth spawn methods (smart spawning)](https://www.phusionpassenger.com/library/indepth/ruby/spawn_methods/#smart-spawning-hooks) * [The scheduler comes up when running the Rails console or a Rake task](https://github.com/jmettraux/rufus-scheduler#avoid-scheduling-when-running-the-ruby-on-rails-console) +* [The job triggers twice](https://github.com/jmettraux/rufus-scheduler#lockfile--mylockfiletxt) * [I don't get any of this, I just want it to work in my Rails application](#so-rails) * [I get "zotime.rb:41:in `initialize': cannot determine timezone from nil"](#i-get-zotimerb41in-initialize-cannot-determine-timezone-from-nil) ## scheduling @@ -374,11 +375,11 @@ Since, by default, jobs are triggered in their own new thread, job instances might overlap. For example, a job that takes 10 minutes and is scheduled every 7 minutes will have overlaps. To prevent overlap, one can set :overlap => false. Such a job will not trigger if one of its instance is already running. -The `:overlap` option is considered before the `:mutex` option when the scheduler is reviewing jobs for triggering. +The `:overlap` option is considered after the `:mutex` option when the scheduler is reviewing jobs for triggering. ### :mutex => mutex_instance / mutex_name / array of mutexes When a job with a mutex triggers, the job's block is executed with the mutex around it, preventing other jobs with the same mutex to enter (it makes the other jobs wait until it exits the mutex). @@ -413,10 +414,10 @@ This option is for repeat jobs (cron / every) only. It's used to specify the first time after which the repeat job should trigger for the first time. In the case of an "every" job, this will be the first time (modulo the scheduler frequency) the job triggers. -For a "cron" job, it's the time *after* which the first schedule will trigger. +For a "cron" job as well, the :first will point to the first time the job has to trigger, the following trigger time are then determined by the cron string. ```ruby scheduler.every '2d', :first_at => Time.now + 10 * 3600 do # ... every two days, but start in 10 hours end