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