def set_limits(self, limits):
<EOL>chksum = hashlib.md5()  <EOL>for lim in limits:<EOL><INDENT>chksum.update(lim)<EOL><DEDENT>new_sum = chksum.hexdigest()<EOL>with self.limit_lock:<EOL><INDENT>if self.limit_sum == new_sum:<EOL><INDENT>return<EOL><DEDENT>self.limit_data = [msgpack.loads(lim) for lim in limits]<EOL>self.limit_sum = new_sum<EOL><DEDENT>
Set the limit data to the given list of limits.  Limits are
specified as the raw msgpack string representing the limit.
Computes the checksum of the limits; if the checksum is
identical to the current one, no action is taken.