[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [Orekit Developers] Work In Progress for thread safety
>-----Message d'origine-----
>De : MAISONOBE Luc [mailto:luc.maisonobe@c-s.fr]
>Envoyé : mardi 10 avril 2012 19:22
>À : orekit-developers@orekit.org
>Objet : [Orekit Developers] Work In Progress for thread safety
>Hi all,
>Some progress has been made on thread-safety for Orekit (see issue
><https://www.orekit.org/forge/issues/3>).
>As discussed on this list and on the issue, we have set up a
>thread-safe TimeStampedCache that do not use synchronization at all
>but rely on more efficient mechanisms (read-write locks). The
>rationale is to have thread safety that works even when threads are
>not tightly bound to some dates interval. This corresponds to two
>major use cases:
> - one where threads are used in a pool (see ExecutorService and the whole
> java standard concurrent package)
> - one where threads are created and shut down at high frequency, a new thread
> being used for each request
>Of course, it also supports applications where threads are completely
>under control and each thread is tightly bound to a date range.
>This work started on a dedicated branch, and has now been merged back
>into master. As of writing, the general TimeStampedCache framework is
>in place for the simplest case of leap seconds handling (the UTCScale
>class). It will be extended to all other Orekit caches and can also be
>used at application level (people can for example need cached orbits).
>I would be happy to get some feedback from users. If you have
>multi-threaded applications, could you check the behaviour of the
>current implementation on dates ? Be aware that for now only UTC-TAI
>relies on the new thread-safe mechanism and for example frames are not
>thread-safe yet (but will probably be soon).
Hi Luc,
Up to now, we did not spend too much time on this issue but we are going to improve our multi-threaded use-cases and test your solution.
We will inform you about the results.
Best regards,
Yannick
>Thanks for your help
>Luc, on behalf of the Orekit team
>----------------------------------------------------------------
>This message was sent using IMP, the Internet Messaging Program.