Dan Baston
Dan Baston
> The api for the interruption handling is a little tricky to understand. I gather I register the callback, and then from the callback I call GEOS_interruptRequest() when I want...
> I could work with either. The per-thread/context callback would be cleaner though. OK, with the current iteration you can interrupt the current thread using `GEOS_interruptThread` called from either a...
> I'm curious whether you've considered making it per-context rather than per-thread. Yes, and that would certainly make for a cleaner API. The problem is that the "context" is a...
Maybe we could have a thread-local global variable in the C++ library that stores the context, and every C API call sets that global variable before calling code in the...
I think that would also work. Pushing the context object into the C++ library might reduce the penalty because we would be setting/checking one thread-local variable instead of two. I...
See #803 for an alternative API that is based on context handles.
Related to this, the `RasterSequentialProcessor` should disregard `max_cells_in_memory` if it is smaller than the block size. This would avoid unnecessary repeated reads of the same blocks.
Something like `exact_extract(rast, poly, 'mean', bands=[1,2,3])` ? It's clear what this would mean if `rast` is a filename. Less clear what it means if `rast` is a list of filenames,...
> Maybe it is possible to just pick any in value... but anyway it is a hassle. I was thinking of "count", where it doesn't matter if the value is...
`DataSource.StartTransaction` is respecting the value of `ogr.UseExceptions()`, which seems like expected behavior to me. If the alternative of checking return values is desired, why not disable exceptions?