It's (mostly) just events. Look at how many delegate methods contain the words "did" and "will".
Object A is going through its life cycle, doing what it does. Certain events there trigger delegate messages. Object B, A's delegate, receives these and does things, or not, as desired, based on the event.
Object A is going through its life cycle, doing what it does. Certain events there trigger delegate messages. Object B, A's delegate, receives these and does things, or not, as desired, based on the event.