For example, in addEdges(), the main loop
https://github.com/statnet/network/blame/769972a6d377e608143d8a05a3df8d6bb3de56be/src/access.c#L574
could call R_CheckUserInterrupt(); every thousand (?) iterations. It's similar with other functions that might take long inputs.