Difference between get_next_item and get?

In reply to chaitanya_i:

get_next_item() is a blocking call, where-as get() is a non-blocking call.
get() is used in cases, where the given protocol/interface supports pipe-lining.

Refer “Driver/Pipelined” section of UVM cookbook for an example of get()/put().