[GH-ISSUE #12] Move sync off main thread #501

Closed
opened 2026-03-01 17:39:21 +03:00 by kerem · 6 comments
Owner

Originally created by @aluxnimm on GitHub (Jun 9, 2015).
Original GitHub issue: https://github.com/aluxnimm/outlookcaldavsynchronizer/issues/12

Originally assigned to: @aluxnimm on GitHub.

During synchronization Outlook becomes unresponsive. With a large calendar file it can take a couple minutes to finish a sync, during which you are not able to use email or calendar.

Is it possible to allow synchronization in a background thread, similar to how Outlook checks for email updates?

Original comment by: dbolton

Original Ticket: outlookcaldavsynchronizer/34

Originally created by @aluxnimm on GitHub (Jun 9, 2015). Original GitHub issue: https://github.com/aluxnimm/outlookcaldavsynchronizer/issues/12 Originally assigned to: @aluxnimm on GitHub. During synchronization Outlook becomes unresponsive. With a large calendar file it can take a couple minutes to finish a sync, during which you are not able to use email or calendar. Is it possible to allow synchronization in a background thread, similar to how Outlook checks for email updates? Original comment by: dbolton Original Ticket: [outlookcaldavsynchronizer/34](https://sourceforge.net/p/outlookcaldavsynchronizer/34)
kerem 2026-03-01 17:39:21 +03:00
Author
Owner

@aluxnimm commented on GitHub (Jun 9, 2015):

We do caldav operations in background threads but the creation of outlook appointments needs to be done in the main thread. Therefore you should limit the amount of data by configuring the sync timespan. It is often not necessary to sync events of the past.

Original comment by: aluxnimm

<!-- gh-comment-id:126312153 --> @aluxnimm commented on GitHub (Jun 9, 2015): We do caldav operations in background threads but the creation of outlook appointments needs to be done in the main thread. Therefore you should limit the amount of data by configuring the sync timespan. It is often not necessary to sync events of the past. Original comment by: aluxnimm
Author
Owner

@aluxnimm commented on GitHub (Jun 9, 2015):

  • status: open --> closed

Original comment by: aluxnimm

<!-- gh-comment-id:126312156 --> @aluxnimm commented on GitHub (Jun 9, 2015): - **status**: open --> closed Original comment by: aluxnimm
Author
Owner

@aluxnimm commented on GitHub (Jun 9, 2015):

Thank you for the suggestions. Does Outlook recreate the appointments with every sync even if there are no changes?

I haven't looked at the code, but I also wondered if it was a modal dialog during sync (see attached) that prevented use of other Outlook windows rather than use of the main thread.

Original comment by: dbolton

<!-- gh-comment-id:126312157 --> @aluxnimm commented on GitHub (Jun 9, 2015): Thank you for the suggestions. Does Outlook recreate the appointments with every sync even if there are no changes? I haven't looked at the code, but I also wondered if it was a modal dialog during sync (see attached) that prevented use of other Outlook windows rather than use of the main thread. Original comment by: dbolton
Author
Owner

@aluxnimm commented on GitHub (Jun 9, 2015):

after initial sync only changes are synced of course. maybe you have some errors in your log file if it starts with a full sync again? please provide your log.

Original comment by: aluxnimm

<!-- gh-comment-id:126312158 --> @aluxnimm commented on GitHub (Jun 9, 2015): after initial sync only changes are synced of course. maybe you have some errors in your log file if it starts with a full sync again? please provide your log. Original comment by: aluxnimm
Author
Owner

@aluxnimm commented on GitHub (Jun 9, 2015):

Hi

"I also wondered if it was a modal dialog during sync (see attached) that prevented use of other Outlook windows rather than use of the main thread."

The dialog is non-modal. Since the UI-Thread is busy with synchronization outlook is unresponsive (access to the outlook-object-model has to happen in the UI-thread)

Maybe there is some space for minor improvements, which could reduce the non-responsivity-time by approx 10%-15%. I will check this in the next few days

br
Gerhard

Original comment by: nertsch

<!-- gh-comment-id:126312160 --> @aluxnimm commented on GitHub (Jun 9, 2015): Hi "I also wondered if it was a modal dialog during sync (see attached) that prevented use of other Outlook windows rather than use of the main thread." The dialog is non-modal. Since the UI-Thread is busy with synchronization outlook is unresponsive (access to the outlook-object-model has to happen in the UI-thread) Maybe there is some space for minor improvements, which could reduce the non-responsivity-time by approx 10%-15%. I will check this in the next few days br Gerhard Original comment by: nertsch
Author
Owner

@aluxnimm commented on GitHub (Jun 17, 2015):

Attached is an excerpt of the last few lines of the log. Happy to share the full log privately. (The beginning of the log appears to include some events)

Original comment by: dbolton

<!-- gh-comment-id:126312161 --> @aluxnimm commented on GitHub (Jun 17, 2015): Attached is an excerpt of the last few lines of the log. Happy to share the full log privately. (The beginning of the log appears to include some events) Original comment by: dbolton
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/outlookcaldavsynchronizer#501
No description provided.