Why is it invalid to connect a single blocking_put_port to multiple imps?

here is my code:

producer producer0;
consumer consumer0;
consumer consumer1;
consumer consumer2;
consumer consumer3;
                                     ...

producer0.put_port.connect(consumer0.put_imp);
producer0.put_port.connect(consumer1.put_imp);
producer0.put_port.connect(consumer2.put_imp);
producer0.put_port.connect(consumer3.put_imp);

when i run producer.put (a simple $display(ā€œ%sā€,get_name())function) ,it can be only seen that consumer0 was displayed, the rest of consumers did not come out anything.

blocking ports are only allowed for oen-to-one connections.
Only analysis ports are allowd for multiple connections.

1 Like

thank you:)