I think the ID is being put to the bottom of the stack of available IDs. It will use it again when it runs out.
It's the same with all IDs, such as sprites:
// Project: IDs
// Created: 2015-02-05
// set window properties
SetWindowTitle( "IDs" )
SetWindowSize( 1024, 768, 0 )
// set display properties
SetVirtualResolution( 1024, 768 )
SetSyncRate(2,0)
do
id = createSprite(0)
Print( str(id) )
Sync()
deleteSprite(id)
loop
[EDIT] It would take 136 years to run out of IDs and loop back to the beginning at the rate of 1 connection per second.
Quidquid latine dictum sit, altum sonatur