[OSRS-PROJ] Threadsafe question...

Frank Warmerdam warmerdam at pobox.com
Fri May 16 13:17:12 EDT 2003

Judd Taylor wrote:
> Hello,
>     I'm new to the list and pretty new to Proj4 in general, so just let me
> know if I offend any etiquette of which I'm unaware.
>     I've just finished writing an interface to the Proj4 library for Perl's
> PDL (Perl Data Language). The way I use the interface it to call pj_fwd on
> each value in large arrays (usually 1354x1010). Given that there are no data
> dependancies in the calculations, I'd like to multi-thread the interface to
> squeeze more performance out of our SMP machines. Is the C API to Proj4
> threadsafe?


To the best of my knowledge PROJ.4 is safe for multi-threaded use with at
least these caveats:

  o The global proj.4 error variable could cause problems if some points fail.

  o The datum shifting code managed a "static" list of loaded grids, and could
    have problems used in a multi-threaded context.

If you are just using pj_fwd() and pj_inv() in multi-threaded form, and don't
need to capture error numbers properly you should be OK ... IMHO.

Best regards,
I set the clouds in motion - turn up   | Frank Warmerdam, warmerdam at pobox.com
light and sound - activate the windows | http://pobox.com/~warmerdam
and watch the world go round - Rush    | Geospatial Programmer for Rent

PROJ.4 Discussion List
See http://www.remotesensing.org/proj for subscription, unsubscription
and other information.

More information about the Proj mailing list