JetBrains / skija

Java bindings for Skia
Apache License 2.0
2.63k stars 127 forks source link

libc++abi.dylib: Pure virtual function called! #26

Closed Solido closed 4 years ago

Solido commented 4 years ago

Hi !

This happen from time to time. No more info displayed.

Thanks

tonsky commented 4 years ago

Any clues on what are you doing when this happens?

Solido commented 4 years ago

Batch rendering may be the cause. Async state between Java / C ?

Solido commented 4 years ago

Details: Executors.newFixedThreadPool(4) then submit each task surface = Surface.makeRasterN32Premul(width, height) ...

tonsky commented 4 years ago

Okay, so you are doing it from multiple thread simultaneously. Frankly, I have no idea which Skia calls are multithread-safe and which are not. The Skija wrapper does not add anything on top of it (I hope) so must be a problem with Skia internals. I recommend you check that the calls you are making are actually safe and can be invoked from multiple threads.

Solido commented 4 years ago

Yep thank you ! I close but at least we have a note for later.