Get some training, honestly it's worth it - try the vSphere 'Install, Manage & Configure' as a starter.
Either way your query comes down to some basic understanding of what a hypervisor does, essentially they're just complex time-slicers.
For instance if you only had one real CPU cores and two VMs, each with one virtual cpu core and both were 100% busy the hypervisor would just alternate this load between servers equally; one would get some real CPU time then the other would get an equal amount of time and then it'd go back to the first VM again.
In the scenario above if you had two or more real CPU cores then effectively each VM would get all the CPU time they needed and the time wouldn't have to be 'sliced'.
This model extrapolates to many real CPU cores and many many virtual CPU cores - if there's enough real CPU core time available to allow all virtual CPU usage to be carried out without time slicing then that's what happens, everyone's happy. If there's more demand than resources then time-slicing happens and you lose some performance but everything's still fine.
What resource pools do is make time-slicing NOT equal. For instance in the scenario above you could make it so that in the one real CPU core example one of the VMs could get twice or more CPU time than the other VM. The hypervisor just gives more time to the resource that's configured to have more CPU resource - it's as simple as that.
That said vSphere resource pools can get VERY complex VERY quickly and if I were you I'd seriously consider just leaving things at their default setting and no changing anything about resouce allocation. It's not that it doesn't work great but from your question I'd suggest you really do with the relevant training before going down that route.
Hope this helps.