循环中断

来源:互联网 发布:javascript的date对象 编辑:程序博客网 时间:2024/05/01 10:10

源码:

 while(++cAttempts < 255)        {        Map mapStatus = getStatusMap();        synchronized(mapStatus)        {            status = (Status)mapStatus.get(oKey);            if(status == null || !status.isValid())            {                status = instantiateStatus();                mapStatus.put(oKey, status);            }        }        if(prepareStatus(oKey, status))            return status;        }        throw new IllegalStateException("Overflow Map was unable to obtain and prepare the Status for \"" + oKey + "\" for processing (Status=" + status + ")");        }catch(Error e){        gate.exit();        throw e;        }  

反编译后:

_L1:        if(++cAttempts >= 255)            break MISSING_BLOCK_LABEL_129;        Map mapStatus = getStatusMap();        synchronized(mapStatus)        {            status = (Status)mapStatus.get(oKey);            if(status == null || !status.isValid())            {                status = instantiateStatus();                mapStatus.put(oKey, status);            }        }        if(prepareStatus(oKey, status))            return status;          goto _L1        throw new IllegalStateException("Overflow Map was unable to obtain and prepare the Status for \"" + oKey + "\" for processing (Status=" + status + ")");        Error e;


原创粉丝点击