IOC is the workhorse instruction of electronic trading. Almost every algorithmic-order and smart-order-router fires IOC child-orders at venue after venue, keeping nothing visible and leaving no trace when liquidity is not there.
Compared with fill-or-kill, IOC accepts partial fills. Compared with a day limit-order, it never becomes a resting target that others can trade against.
Example: you send an IOC buy for 5,000 at 12.00. Two thousand shares are offered at 12.00, so you get 2,000 and the other 3,000 are cancelled immediately. Your fill report shows one execution and a cancellation, not a working order. Running the same IOC ten times as price ticks is a crude sweep strategy.
Related: fill-or-kill, sweep-to-fill, child-order, all-or-none