If you run out of workers, this is likely to be due to one of the following (or a combination thereof):
1) There are simply too many active users.
2) There are too many parallel queries.
3) You have set "Max worker threads" to a low value.
[font="Times New Roman"]Erland Sommarskog, SQL Server MVP, www.sommarskog.se[/font]