The chip has a transmit buffer so there is no need for the tx function to be blocking.
I modified my version of the library to be non-blocking. Simply put the outgoing packet in one of the free buffer slots and immediatly return. If there are no free slots then return an error code and handle that in your application code.