Aborting a uvm_tlm_analysis_fifo.get()

Hi,

I have a scenario where a uvm_tlm_analysis_fifo.get() must be aborted due to timeout.
mytask() seems to hang in the get() (although data is available) when called after a timeout’d execution.

        
task mytask();
    fork
        begin
            my_uvm_tlm_analysis_fifo.get(received_packet);
        end
        begin
            #200us;
            `uvm_fatal(get_type_name(), "Timeout!")
        end
    join_any
    disable fork;
endtask

Is there a way to reset the fifo after such an event?

Thanks!

In reply to dipling:
There is nothing wrong with the code you wrote. Perhaps you need to look elsewhere.