Can we covergroup inside a monitor

In reply to Vickyvinayk:

A pure virtual function is a placeholder for an implementation. Normally it is used in a virtual class. A virtiual class cannot be constructed.
WRT your code:

class fifo_coverage extends uvm_subcriber#(fifo_seq_item);
// ..
fifo_seq_item item;
..remaining code here
..
//
virtual function void write(fifo_seq_item t);
item = t;
sync_fifo_cov.sample();
endfunction

endclass:fifo_coverage

Don’t forget to construct your covergroup.