2213 public ThreadContainer threadContainer(Thread thread) {
2214 return thread.threadContainer();
2215 }
2216
2217 public void start(Thread thread, ThreadContainer container) {
2218 thread.start(container);
2219 }
2220
2221 public StackableScope headStackableScope(Thread thread) {
2222 return thread.headStackableScopes();
2223 }
2224
2225 public void setHeadStackableScope(StackableScope scope) {
2226 Thread.setHeadStackableScope(scope);
2227 }
2228
2229 public Thread currentCarrierThread() {
2230 return Thread.currentCarrierThread();
2231 }
2232
2233 public <T> T getCarrierThreadLocal(CarrierThreadLocal<T> local) {
2234 return ((ThreadLocal<T>)local).getCarrierThreadLocal();
2235 }
2236
2237 public <T> void setCarrierThreadLocal(CarrierThreadLocal<T> local, T value) {
2238 ((ThreadLocal<T>)local).setCarrierThreadLocal(value);
2239 }
2240
2241 public void removeCarrierThreadLocal(CarrierThreadLocal<?> local) {
2242 ((ThreadLocal<?>)local).removeCarrierThreadLocal();
2243 }
2244
2245 public boolean isCarrierThreadLocalPresent(CarrierThreadLocal<?> local) {
2246 return ((ThreadLocal<?>)local).isCarrierThreadLocalPresent();
2247 }
2248
2249 public Object[] scopedValueCache() {
2250 return Thread.scopedValueCache();
2251 }
2252
|
2213 public ThreadContainer threadContainer(Thread thread) {
2214 return thread.threadContainer();
2215 }
2216
2217 public void start(Thread thread, ThreadContainer container) {
2218 thread.start(container);
2219 }
2220
2221 public StackableScope headStackableScope(Thread thread) {
2222 return thread.headStackableScopes();
2223 }
2224
2225 public void setHeadStackableScope(StackableScope scope) {
2226 Thread.setHeadStackableScope(scope);
2227 }
2228
2229 public Thread currentCarrierThread() {
2230 return Thread.currentCarrierThread();
2231 }
2232
2233 public Thread getCarrierThread(Thread thread) {
2234 if (thread instanceof VirtualThread vthread) {
2235 return vthread.carrierThread();
2236 } else {
2237 throw new UnsupportedOperationException();
2238 }
2239 }
2240
2241 public int getInternalState(Thread thread) {
2242 if (thread instanceof VirtualThread vthread) {
2243 return vthread.state();
2244 } else {
2245 throw new UnsupportedOperationException();
2246 }
2247 }
2248
2249 public <T> T getCarrierThreadLocal(CarrierThreadLocal<T> local) {
2250 return ((ThreadLocal<T>)local).getCarrierThreadLocal();
2251 }
2252
2253 public <T> void setCarrierThreadLocal(CarrierThreadLocal<T> local, T value) {
2254 ((ThreadLocal<T>)local).setCarrierThreadLocal(value);
2255 }
2256
2257 public void removeCarrierThreadLocal(CarrierThreadLocal<?> local) {
2258 ((ThreadLocal<?>)local).removeCarrierThreadLocal();
2259 }
2260
2261 public boolean isCarrierThreadLocalPresent(CarrierThreadLocal<?> local) {
2262 return ((ThreadLocal<?>)local).isCarrierThreadLocalPresent();
2263 }
2264
2265 public Object[] scopedValueCache() {
2266 return Thread.scopedValueCache();
2267 }
2268
|