The global delock means the global will stay locked until the top most transaction completes (tcommit or trollback), this is to protect against another process updating the global (assuming it uses locks) whilst your load is running.

You can effectively achieve the same with your own lock instead of the top level tstart

lock +^TEST 
for I=1:1:N { 
    set ^TEST(I) = $lb("", "123") 
    
} 
hang 5 
lock -^TEST

Depending on your requirements, a timeout and lock failure handling might be needed