Blocking, delayed assignment vs Non-blocking, delayed assignment on a buffer

In reply to dave_59:

I thought that the effect of blocking statements is only on the next statements within a procedural block. Based on the explanation it sounds like even the always block once triggered is paused if the always block has blocking statements and is paused till the blocking statements complete their evaluation and assignment and only then it gets unblocked and start responding again to any triggers on it’s sensitivity list.

whereas in the non-blocking case we evaluate continuously as the always block is never paused by the transport delays in the non-blocking statements. And I guess the same holds even if we had an inertial delay using non-blocking statements.

Please confirm. Thanks a lot Dave for your earlier explanation.