Recursively change directory and file permissions

Recently I had problems in one of the servers using UNIX find command to recursively change file and folder permissions. I was running:

find public_html/ -type d -exec chmod 755 {} \;

And keep getting the error:

find: cannot fork: Resource temporarily unavailable

After insisting for some time, and alternative want of runing this ended up working:

find public_html/ -type d -print0 | xargs -0 chmod 0755