There are so many flavors of consistency checkers I cannot remember all. IIRC, true checkers, those that analyze all index pages, have all some degree of intrusion. They are supposed to be run during a maintenance window; for instance, on Sundays. This applies to dbcc checkalloc, dbcc checktable, dbcc indexalloc, dbcc reindex and even dbcc checkstorage. dbcc checkstorage is the recommended tool for global consistency checking and I think it does not lock too much, but it may report spurious results (false inconsistencies) if ran while applications are running (unless they are read only)
sp_indsuspect is really fast and harmless... because it just reports the indexes marked suspect during startup and recovery. It is worth running sp_indsuspect in every database at least once, because some indexes may be corrupt from the installation or upgrade. But it is not a replacement for the above.
dbcc reindex is a consistency checker that is followed by drop and create of the suspect index if found corrupt. Hence, not to be run while being used by the applications.
I cannot say how safe dbcc reindex is. Personally, I never include in my regular maintenance scripts any tool which fixes corruptions automatically. I prefer only the reporting version and I'll decide later whether the fixing version ought to be run against the objects reported.
That said, fixing indexes without modifying the data is always safer than fixing the table itself.