I try not to let a general kill prisoners more than once because the moral penalties his troops get can be enough to make him worthless. (First time only gives him a dread star.) Besides, I like the money.

I'll often kill prisoners if my general starts to flee as chances are he is going to get some bad vice and won't be worth much anyways.