The answer is I had a 6-hour booking a few years back!!
During this time I had two short 10-minute breaks, but I actually performed strolling close up magic for 5 hours and 40 minutes. The time for which I am booked relates, of course, to how many people are at the event, together with the time for which I entertain each group of people. The 6-hour booking was for a very large event celebrating the 150th Anniversary of a local cricket club. The number attending was around 1700.
On average people at a function are in an average group size of about 5. 1700 people are therefore equivalent to 340 groups. The total performance time I had was 340 minutes i.e. 1 minute per group! In practice, of course people arrive in a staggered fashion over a period of time. I was expected to entertain as big a sample of the crowd as possible over the time I had. They appreciated I would not see everyone! I therefore did one short effect per group, and I varied this between groups. Therefore I reached about 40-50% of those attending.
For very large events like this, there needs to be a team of magicians if full coverage is required. My normal booking time is three hours for events with 90-100 guests. In this time I can entertain each group with three varied, high impact effects. This is not all in one go! For example, guests might see me once in the drinks reception and then performing two more effects during a meal (in-between courses). I can also quote for shorter performance times, if required.