Ist sicher eine einfache und empfehlenswerte Möglichkeit.
Ich mach das so, dass ich die ganze TWI-Geschichte für Interrupts auslege, und für den gesamten Lese- oder Schreibbefehl ein (äusseres) Limit setze, d.h. es ist mir gleich, was die Aktion im Einzelnen am Fertigwerden hindert, also ob der Bus blockiert wird oder irgendein Slave/Master spinnt (deadlock bei multimaster)
Vorteil ist, dass der sonstige Ablauf so oder so nicht (mässig) behindert werden kann.