I would think nice would set the priority based on the the moment in time the command is issued. So if something changes as the system runs the priority would change. If after running nice and not getting the desired result after monitoring did you try to set again with renice ?
I am not sure if my assumptions are correct but this is how I always perceived it.