According to Official Guinness Records,
The longest marathon whistling lasted 25 hr 30 min 5 sec by Jennifer Anavi Davies (Canada) at the Impossibility Challenger in Dachau, Germany, on 2-3 October 2010. She rotated among a selection of 125 different tunes, each at least 2 minutes in length.
Davies had previously attempted unsuccessfully to set this record. This was her second career attempt.
For a complete list of 2010 records, please visit 2010 Guinness Records in Germany.