If you are trying to do something asynchronous, so that the calling transaction does not have to wait, you can consider Service Broker , which is designed for this - burn some asynchronous task and return control to the caller, regardless of the scope of the transaction.
Another idea is that your trigger does not do the work, but instead processes the work item in the queue table and constantly runs a background process to process the queue. This is not always easy to do if your work item is working with a data set in inserted / deleted , but without additional context it certainly seems to be a viable option.
I do not know how to prevent the trigger from starting from the calling transaction. In fact, this is just the point.
source share