Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8349841
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 9, 20262026-06-09T08:07:52+00:00 2026-06-09T08:07:52+00:00

I am using the ScheduledThreadPoolExecutor to execute periodic tasks. It is essential that the

  • 0

I am using the ScheduledThreadPoolExecutor to execute periodic tasks.
It is essential that the execution be periodic, not with fixed delay.

I encountered the following problem: consider a period of 1 minute for a task. If the task takes 5 minutes to execute (e.g. because of a temporary network problem), the missed executions get queued up and dispatched immediately after the task finishes. Is there a way to get rid of the accumulated executions that were missed?

I tried using the remove method, but it removes the task completely, not only a specific execution.

Thanks

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-09T08:07:54+00:00Added an answer on June 9, 2026 at 8:07 am

    There might be a better way, but you could have your task reschedule itself. That way, one execution will always run 1 minute after the previous execution has finished:

    final ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
    Runnable yourTask = new Runnable() {
    
        @Override
        public void run() {
            //do your stuff
            scheduler.schedule(this, 1, TimeUnit.MINUTES);
        }
    };
    scheduler.schedule(yourTask, 1, TimeUnit.MINUTES);
    

    EDIT

    If you want your task to run exactly at hh:mm:00 (exact minute) you can replace the code by

    long millisToNextMinute = 60000 - System.currentTimeMillis() % 60000;
    scheduler.schedule(this, millisToNextMinute, TimeUnit.MILLISECONDS);
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I'm using the ScheduledThreadPoolExecutor class to schedule tasks to run every 30 or 60
Using Yii, I want to delete all the rows that are not from today.
Using TortoiseSVN against VisualSVN I delete a source file that I should not have
I have a background task that I run using the ScheduledThreadPoolExecutor with code like
I am extremely confused as to why the following cast does not work: ScheduledThreadPoolExecutor
Using mercurial, I've run into an odd problem where a line from one committer
Using report builder 3.0, I have a report that queries a cube. How do
Using Rails 3.2.0.rc2 and ruby 1.9.3p0 In app/views/requests/_form.html.erb I have the following code for
Using Entity Framework CodeFirst, how do I create a created datetime column that gets
I am using ScheduledThreadPoolExecutor: threadPoolEx = new ScheduledThreadPoolExecutor(limit); I want to know the number

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.