What are the best practices for creating a scalable polling windows service?
===

If I want to create a windows service which polls a database table every x minutes for records which require further action (like sending an email with information from that record) what are the best practices for doing so such that the service can scale across more than one machine.  How would I make sure I'm not going to perform an action on the same record on 2 different machines?