Files
react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptContextHolder.java
T
Andres Suarez 722feeb02b Tidy up license headers [1/n]
Summary: Changelog: [General] [Fixed] - License header cleanup

Reviewed By: yungsters

Differential Revision: D17952695

fbshipit-source-id: 81aa607612ba1357ef7814ef20371335151afe7e
2019-10-16 10:06:33 -07:00

34 lines
847 B
Java

/*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
package com.facebook.react.bridge;
import androidx.annotation.GuardedBy;
/**
* Wrapper for JavaScriptContext native pointer. CatalystInstanceImpl creates this on demand, and
* will call clear() before destroying the VM. People who need the raw JavaScriptContext pointer can
* synchronize on this wrapper object to guarantee that it will not be destroyed.
*/
public class JavaScriptContextHolder {
@GuardedBy("this")
private long mContext;
public JavaScriptContextHolder(long context) {
mContext = context;
}
@GuardedBy("this")
public long get() {
return mContext;
}
public synchronized void clear() {
mContext = 0;
}
}