i'm not aware of a nicer way to do this, it may well exist, but google doesn't say so...
i'd say you could set a cron job to update every so often using a command like
Code:
if [ `uptime | cut -c 60,62-63` -le 10 ]; then nice -19 updatedb; fi
so if the load average on the last 5 minutes is less than 0.10 then run updatedb, with a nice value. you might also want to do an age check on thelocatedb file too. no need to update if it's less that 24 ours old etc...