Some APIs for other sensors, namely libfreenect2 and the legacy version of librealsense suffer from similar issues. To me it seems like most of these depth sensor projects don't test their libraries with the concurrent use of multiple cameras. I never tried using the Astra SDK with more than 1 sensor, but I'm going to guess the problem is similar: Enumerating the USB devices in some initialization function in the Astra SDK opens all USB devices matching specific VID / PID, which causes other processes accessing those devices to have issues with the open handle to the USB device.
For the other projects we wrote a hack for both libfreenect2 and librealsense that used an environment variable listing currently open USB devices, and the enumeration / initialization functions in the SDK didn't touch those devices which were listed in the environment variable. Annoying, but it works. I'm sure the Astras can be operated this way too, but it will take some code reading to get this implemented.
Here's some discussion about a similar problem with the libfreenect2 project: https://github.com/OpenKinect/libfreenect2/issues/749. Considering Astra SDK uses OpenNI2 under the hood, you'll find that link more than useful, I believe.