當前位置: 首頁>>代碼示例>>Java>>正文


Java Tag.release方法代碼示例

本文整理匯總了Java中javax.servlet.jsp.tagext.Tag.release方法的典型用法代碼示例。如果您正苦於以下問題:Java Tag.release方法的具體用法?Java Tag.release怎麽用?Java Tag.release使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在javax.servlet.jsp.tagext.Tag的用法示例。


在下文中一共展示了Tag.release方法的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: reuse

import javax.servlet.jsp.tagext.Tag; //導入方法依賴的package包/類
/**
 * Adds the given tag handler to this tag handler pool, unless this tag
 * handler pool has already reached its capacity, in which case the tag
 * handler's release() method is called.
 *
 * @param handler Tag handler to add to this tag handler pool
 */
public void reuse(Tag handler) {
    synchronized( this ) {
        if (current < (handlers.length - 1)) {
            handlers[++current] = handler;
            return;
        }
    }
    // There is no need for other threads to wait for us to release
    handler.release();
    if (Constants.INJECT_TAGS) {
        try {
            instanceManager.destroyInstance(handler);
        } catch (Exception e) {
            log.warn("Error processing preDestroy on tag instance of "
                    + handler.getClass().getName(), e);
        }
    }
}
 
開發者ID:lamsfoundation,項目名稱:lams,代碼行數:26,代碼來源:TagHandlerPool.java

示例2: reuse

import javax.servlet.jsp.tagext.Tag; //導入方法依賴的package包/類
/**
 * Adds the given tag handler to this tag handler pool, unless this tag
 * handler pool has already reached its capacity, in which case the tag
 * handler's release() method is called.
 *
 * @param handler
 *            Tag handler to add to this tag handler pool
 */
public void reuse(Tag handler) {
    synchronized (this) {
        if (current < (handlers.length - 1)) {
            handlers[++current] = handler;
            return;
        }
    }
    // There is no need for other threads to wait for us to release
    handler.release();
    try {
        instanceManager.destroyInstance(handler);
    } catch (Exception e) {
        Throwable t = ExceptionUtils.unwrapInvocationTargetException(e);
        ExceptionUtils.handleThrowable(t);
        log.warn("Error processing preDestroy on tag instance of " +
                handler.getClass().getName(), t);
    }
}
 
開發者ID:nkasvosve,項目名稱:beyondj,代碼行數:27,代碼來源:TagHandlerPool.java

示例3: reuse

import javax.servlet.jsp.tagext.Tag; //導入方法依賴的package包/類
/**
 * Adds the given tag handler to this tag handler pool, unless this tag
 * handler pool has already reached its capacity, in which case the tag
 * handler's release() method is called.
 *
 * @param handler Tag handler to add to this tag handler pool
 */
@Override
public void reuse(Tag handler) {
    PerThreadData ptd = perThread.get();
    if (ptd.current < (ptd.handlers.length - 1)) {
        ptd.handlers[++ptd.current] = handler;
    } else {
        handler.release();
    }
}
 
開發者ID:liaokailin,項目名稱:tomcat7,代碼行數:17,代碼來源:PerThreadTagHandlerPool.java

示例4: reuse

import javax.servlet.jsp.tagext.Tag; //導入方法依賴的package包/類
/**
    * Adds the given tag handler to this tag handler pool, unless this tag
    * handler pool has already reached its capacity, in which case the tag
    * handler's release() method is called.
    *
    * @param handler Tag handler to add to this tag handler pool
    */
   public void reuse(Tag handler) {
       PerThreadData ptd=(PerThreadData)perThread.get();
if (ptd.current < (ptd.handlers.length - 1)) {
    ptd.handlers[++ptd.current] = handler;
       } else {
           handler.release();
       }
   }
 
開發者ID:lamsfoundation,項目名稱:lams,代碼行數:16,代碼來源:PerThreadTagHandlerPool.java

示例5: reuse

import javax.servlet.jsp.tagext.Tag; //導入方法依賴的package包/類
/**
 * Adds the given tag handler to this tag handler pool, unless this tag
 * handler pool has already reached its capacity, in which case the tag
 * handler's release() method is called.
 *
 * @param handler
 *            Tag handler to add to this tag handler pool
 */
@Override
public void reuse(Tag handler) {
	PerThreadData ptd = perThread.get();
	if (ptd.current < (ptd.handlers.length - 1)) {
		ptd.handlers[++ptd.current] = handler;
	} else {
		handler.release();
	}
}
 
開發者ID:how2j,項目名稱:lazycat,代碼行數:18,代碼來源:PerThreadTagHandlerPool.java

示例6: release

import javax.servlet.jsp.tagext.Tag; //導入方法依賴的package包/類
/**
 * Calls the release() method of all available tag handlers in this tag
 * handler pool.
 */
public synchronized void release() {
    for (int i = current; i >= 0; i--) {
        Tag handler = handlers[i];
        handler.release();
        try {
            instanceManager.destroyInstance(handler);
        } catch (Exception e) {
            Throwable t = ExceptionUtils.unwrapInvocationTargetException(e);
            ExceptionUtils.handleThrowable(t);
            log.warn("Error processing preDestroy on tag instance of "
                    + handler.getClass().getName(), t);
        }
    }
}
 
開發者ID:nkasvosve,項目名稱:beyondj,代碼行數:19,代碼來源:TagHandlerPool.java


注:本文中的javax.servlet.jsp.tagext.Tag.release方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。