Pakistan have taken a 2-1 lead in their five-match one-day international series against Sri Lanka, who fell way short of an imposing 327-run victory target in Sharjah on Sunday.
Pakistan had Mohammad Hafeez, who smashed an unbeaten 140 off 136 balls, largely to thank for their big 50-over score after losing the toss and being put in to bat.
Tillakaratne Dilshan (59) was the only Sri Lanka batsman to go past 50 as they were bowled out for 213 in 44.4 overs, 113 runs short of Pakistan's total.
Umar Gul took the final wicket of Lasith Malinga to finish with leading bowling figures of 3-19 off 5.4 overs.
The fourth ODI takes place in Abu Dhabi on Christmas Day.