当前位置: 首页>>代码示例>>Java>>正文


Java WeakReference.clear方法代码示例

本文整理汇总了Java中java.lang.ref.WeakReference.clear方法的典型用法代码示例。如果您正苦于以下问题:Java WeakReference.clear方法的具体用法?Java WeakReference.clear怎么用?Java WeakReference.clear使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在java.lang.ref.WeakReference的用法示例。


在下文中一共展示了WeakReference.clear方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: unregisterCursor

import java.lang.ref.WeakReference; //导入方法依赖的package包/类
/**
 * Deregisters a cursor from the list to be notified of changes.
 *
 * @param cursor  the cursor to deregister
 */
protected void unregisterCursor(final Cursor<E> cursor) {
    for (final Iterator<WeakReference<Cursor<E>>> it = cursors.iterator(); it.hasNext();) {
        final WeakReference<Cursor<E>> ref = it.next();
        final Cursor<E> cur = ref.get();
        if (cur == null) {
            // some other unrelated cursor object has been
            // garbage-collected; let's take the opportunity to
            // clean up the cursors list anyway..
            it.remove();
        } else if (cur == cursor) {
            ref.clear();
            it.remove();
            break;
        }
    }
}
 
开发者ID:funkemunky,项目名称:HCFCore,代码行数:22,代码来源:CursorableLinkedList.java

示例2: compressBitmap

import java.lang.ref.WeakReference; //导入方法依赖的package包/类
public static byte[] compressBitmap(String path, int maxSize, int rqsW, int rqsH) {
    if (TextUtils.isEmpty(path)) {
        return null;
    }
    try {
        WeakReference<Bitmap> bitmap = cprsBmpBySize(path, rqsW, rqsH);
        WeakReference<Bitmap> rotatedBmp = autoRotateBitmap(path, bitmap);
        if (!(bitmap == null || rotatedBmp == null || bitmap.get() == rotatedBmp.get())) {
            ((Bitmap) bitmap.get()).recycle();
            bitmap.clear();
        }
        return cprsBmpByQuality(rotatedBmp, maxSize);
    } catch (Exception e) {
        return null;
    }
}
 
开发者ID:JackChan1999,项目名称:boohee_v5.6,代码行数:17,代码来源:BitmapUtils.java

示例3: removeAllInternetConnectivityChangeListeners

import java.lang.ref.WeakReference; //导入方法依赖的package包/类
public void removeAllInternetConnectivityChangeListeners() {
    if (mInternetConnectivityListenersWeakReferences == null) {
        return;
    }

    Iterator<WeakReference<InternetConnectivityListener>> iterator = mInternetConnectivityListenersWeakReferences.iterator();
    while (iterator.hasNext()) {
        WeakReference<InternetConnectivityListener> reference = iterator.next();
        if (reference != null) {
            reference.clear();
        }
        iterator.remove();
    }
    unregisterNetworkChangeReceiver();
}
 
开发者ID:AggarwalAnkit,项目名称:InternetAvailabilityChecker,代码行数:16,代码来源:InternetAvailabilityChecker.java

示例4: instantiateItem

import java.lang.ref.WeakReference; //导入方法依赖的package包/类
@NonNull
@Override
public Object instantiateItem(@NonNull final ViewGroup container, final int position) {
    final Fragment mFragment = (Fragment) super.instantiateItem(container, position);
    final WeakReference<Fragment> mWeakFragment = mFragmentArray.get(position);
    if (mWeakFragment != null) {
        mWeakFragment.clear();
    }
    mFragmentArray.put(position, new WeakReference<>(mFragment));
    return mFragment;
}
 
开发者ID:aliumujib,项目名称:Orin,代码行数:12,代码来源:MusicLibraryPagerAdapter.java

示例5: destroyItem

import java.lang.ref.WeakReference; //导入方法依赖的package包/类
@Override
public void destroyItem(final ViewGroup container, final int position, final Object object) {
    super.destroyItem(container, position, object);
    final WeakReference<Fragment> mWeakFragment = mFragmentArray.get(position);
    if (mWeakFragment != null) {
        mWeakFragment.clear();
    }
}
 
开发者ID:aliumujib,项目名称:Orin,代码行数:9,代码来源:MusicLibraryPagerAdapter.java

示例6: destroyItem

import java.lang.ref.WeakReference; //导入方法依赖的package包/类
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
    super.destroyItem(container, position, object);
    WeakReference<Fragment> weakFragment = weakFragmentMap.get(position);
    if (weakFragment != null) {
        weakFragment.clear();
    }
}
 
开发者ID:SalmanTKhan,项目名称:MyAnimeViewer,代码行数:9,代码来源:HistoryTabFragment.java

示例7: changeDataset

import java.lang.ref.WeakReference; //导入方法依赖的package包/类
public void changeDataset() {
    for (int i = 0; i < weakFragmentMap.size(); i++) {
        WeakReference<Fragment> weakFragment = weakFragmentMap.valueAt(i);
        if (weakFragment != null) {
            weakFragment.clear();
        }
    }
    notifyDataSetChanged();
}
 
开发者ID:SalmanTKhan,项目名称:MyAnimeViewer,代码行数:10,代码来源:HistoryTabFragment.java

示例8: remove

import java.lang.ref.WeakReference; //导入方法依赖的package包/类
public XulDrawable remove(String key) {
	WeakReference<XulDrawable> xulDrawableWeakReference = _cache.remove(key);
	if (xulDrawableWeakReference == null) {
		return null;
	}
	XulDrawable xulDrawable = xulDrawableWeakReference.get();
	xulDrawableWeakReference.clear();
	return xulDrawable;
}
 
开发者ID:starcor-company,项目名称:starcor.xul,代码行数:10,代码来源:XulWorker.java

示例9: removeInternetConnectivityChangeListener

import java.lang.ref.WeakReference; //导入方法依赖的package包/类
/**
 * remove the weak reference to the listener
 */
public void removeInternetConnectivityChangeListener(InternetConnectivityListener internetConnectivityListener) {
    if (internetConnectivityListener == null) {
        return;
    }

    if (mInternetConnectivityListenersWeakReferences == null) {
        return;
    }

    Iterator<WeakReference<InternetConnectivityListener>> iterator = mInternetConnectivityListenersWeakReferences.iterator();
    while (iterator.hasNext()) {

        //if weak reference is null then remove it from iterator
        WeakReference<InternetConnectivityListener> reference = iterator.next();
        if (reference == null) {
            iterator.remove();
            continue;
        }

        //if listener referenced by this weak reference is garbage collected then remove it from iterator
        InternetConnectivityListener listener = reference.get();
        if (listener == null) {
            reference.clear();
            iterator.remove();
            continue;
        }

        //if listener to be removed is found then remove it
        if (listener == internetConnectivityListener) {
            reference.clear();
            iterator.remove();
            break;
        }
    }

    //if all listeners are removed then unregister NetworkChangeReceiver
    if (mInternetConnectivityListenersWeakReferences.size() == 0) {
        unregisterNetworkChangeReceiver();
    }
}
 
开发者ID:AggarwalAnkit,项目名称:InternetAvailabilityChecker,代码行数:44,代码来源:InternetAvailabilityChecker.java


注:本文中的java.lang.ref.WeakReference.clear方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。