ADD week 5
This commit is contained in:
		
							
								
								
									
										64
									
								
								02-Easy5/E5/sources/kotlin/concurrent/LocksKt.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										64
									
								
								02-Easy5/E5/sources/kotlin/concurrent/LocksKt.java
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,64 @@ | ||||
| package kotlin.concurrent; | ||||
|  | ||||
| import java.util.concurrent.locks.Lock; | ||||
| import java.util.concurrent.locks.ReentrantReadWriteLock; | ||||
| import kotlin.Metadata; | ||||
| import kotlin.jvm.functions.Function0; | ||||
| import kotlin.jvm.internal.InlineMarker; | ||||
| import kotlin.jvm.internal.Intrinsics; | ||||
|  | ||||
| /* compiled from: Locks.kt */ | ||||
| @Metadata(d1 = {"\u0000\u001a\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\b\u0003\u001a6\u0010\u0000\u001a\u0002H\u0001\"\u0004\b\u0000\u0010\u0001*\u00020\u00022\f\u0010\u0003\u001a\b\u0012\u0004\u0012\u0002H\u00010\u0004H\u0087\bø\u0001\u0000\u0082\u0002\n\n\b\b\u0001\u0012\u0002\u0010\u0001 \u0001¢\u0006\u0002\u0010\u0005\u001a6\u0010\u0006\u001a\u0002H\u0001\"\u0004\b\u0000\u0010\u0001*\u00020\u00072\f\u0010\u0003\u001a\b\u0012\u0004\u0012\u0002H\u00010\u0004H\u0087\bø\u0001\u0000\u0082\u0002\n\n\b\b\u0001\u0012\u0002\u0010\u0001 \u0001¢\u0006\u0002\u0010\b\u001a6\u0010\t\u001a\u0002H\u0001\"\u0004\b\u0000\u0010\u0001*\u00020\u00022\f\u0010\u0003\u001a\b\u0012\u0004\u0012\u0002H\u00010\u0004H\u0087\bø\u0001\u0000\u0082\u0002\n\n\b\b\u0001\u0012\u0002\u0010\u0001 \u0001¢\u0006\u0002\u0010\u0005\u0082\u0002\u0007\n\u0005\b\u009920\u0001¨\u0006\n"}, d2 = {"read", "T", "Ljava/util/concurrent/locks/ReentrantReadWriteLock;", "action", "Lkotlin/Function0;", "(Ljava/util/concurrent/locks/ReentrantReadWriteLock;Lkotlin/jvm/functions/Function0;)Ljava/lang/Object;", "withLock", "Ljava/util/concurrent/locks/Lock;", "(Ljava/util/concurrent/locks/Lock;Lkotlin/jvm/functions/Function0;)Ljava/lang/Object;", "write", "kotlin-stdlib"}, k = 2, mv = {1, 8, 0}, xi = 48) | ||||
| /* loaded from: classes.dex */ | ||||
| public final class LocksKt { | ||||
|     private static final <T> T withLock(Lock lock, Function0<? extends T> action) { | ||||
|         Intrinsics.checkNotNullParameter(lock, "<this>"); | ||||
|         Intrinsics.checkNotNullParameter(action, "action"); | ||||
|         lock.lock(); | ||||
|         try { | ||||
|             return action.invoke(); | ||||
|         } finally { | ||||
|             InlineMarker.finallyStart(1); | ||||
|             lock.unlock(); | ||||
|             InlineMarker.finallyEnd(1); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     private static final <T> T read(ReentrantReadWriteLock reentrantReadWriteLock, Function0<? extends T> action) { | ||||
|         Intrinsics.checkNotNullParameter(reentrantReadWriteLock, "<this>"); | ||||
|         Intrinsics.checkNotNullParameter(action, "action"); | ||||
|         ReentrantReadWriteLock.ReadLock readLock = reentrantReadWriteLock.readLock(); | ||||
|         readLock.lock(); | ||||
|         try { | ||||
|             return action.invoke(); | ||||
|         } finally { | ||||
|             InlineMarker.finallyStart(1); | ||||
|             readLock.unlock(); | ||||
|             InlineMarker.finallyEnd(1); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     private static final <T> T write(ReentrantReadWriteLock reentrantReadWriteLock, Function0<? extends T> action) { | ||||
|         Intrinsics.checkNotNullParameter(reentrantReadWriteLock, "<this>"); | ||||
|         Intrinsics.checkNotNullParameter(action, "action"); | ||||
|         ReentrantReadWriteLock.ReadLock readLock = reentrantReadWriteLock.readLock(); | ||||
|         int i = 0; | ||||
|         int readHoldCount = reentrantReadWriteLock.getWriteHoldCount() == 0 ? reentrantReadWriteLock.getReadHoldCount() : 0; | ||||
|         for (int i2 = 0; i2 < readHoldCount; i2++) { | ||||
|             readLock.unlock(); | ||||
|         } | ||||
|         ReentrantReadWriteLock.WriteLock writeLock = reentrantReadWriteLock.writeLock(); | ||||
|         writeLock.lock(); | ||||
|         try { | ||||
|             return action.invoke(); | ||||
|         } finally { | ||||
|             InlineMarker.finallyStart(1); | ||||
|             while (i < readHoldCount) { | ||||
|                 readLock.lock(); | ||||
|                 i++; | ||||
|             } | ||||
|             writeLock.unlock(); | ||||
|             InlineMarker.finallyEnd(1); | ||||
|         } | ||||
|     } | ||||
| } | ||||
							
								
								
									
										50
									
								
								02-Easy5/E5/sources/kotlin/concurrent/ThreadsKt.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										50
									
								
								02-Easy5/E5/sources/kotlin/concurrent/ThreadsKt.java
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,50 @@ | ||||
| package kotlin.concurrent; | ||||
|  | ||||
| import kotlin.Metadata; | ||||
| import kotlin.Unit; | ||||
| import kotlin.jvm.functions.Function0; | ||||
| import kotlin.jvm.internal.Intrinsics; | ||||
|  | ||||
| /* compiled from: Thread.kt */ | ||||
| @Metadata(d1 = {"\u0000:\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u000b\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u000e\n\u0000\n\u0002\u0010\b\n\u0000\n\u0002\u0018\u0002\n\u0002\u0010\u0002\n\u0002\b\u0002\n\u0002\u0010\u0000\n\u0002\u0018\u0002\n\u0002\b\u0003\u001aJ\u0010\u0000\u001a\u00020\u00012\b\b\u0002\u0010\u0002\u001a\u00020\u00032\b\b\u0002\u0010\u0004\u001a\u00020\u00032\n\b\u0002\u0010\u0005\u001a\u0004\u0018\u00010\u00062\n\b\u0002\u0010\u0007\u001a\u0004\u0018\u00010\b2\b\b\u0002\u0010\t\u001a\u00020\n2\f\u0010\u000b\u001a\b\u0012\u0004\u0012\u00020\r0\f\u001a3\u0010\u000e\u001a\u0002H\u000f\"\b\b\u0000\u0010\u000f*\u00020\u0010*\b\u0012\u0004\u0012\u0002H\u000f0\u00112\f\u0010\u0012\u001a\b\u0012\u0004\u0012\u0002H\u000f0\fH\u0087\bø\u0001\u0000¢\u0006\u0002\u0010\u0013\u0082\u0002\u0007\n\u0005\b\u009920\u0001¨\u0006\u0014"}, d2 = {"thread", "Ljava/lang/Thread;", "start", "", "isDaemon", "contextClassLoader", "Ljava/lang/ClassLoader;", "name", "", "priority", "", "block", "Lkotlin/Function0;", "", "getOrSet", "T", "", "Ljava/lang/ThreadLocal;", "default", "(Ljava/lang/ThreadLocal;Lkotlin/jvm/functions/Function0;)Ljava/lang/Object;", "kotlin-stdlib"}, k = 2, mv = {1, 8, 0}, xi = 48) | ||||
| /* loaded from: classes.dex */ | ||||
| public final class ThreadsKt { | ||||
|     /* JADX WARN: Type inference failed for: r0v1, types: [kotlin.concurrent.ThreadsKt$thread$thread$1] */ | ||||
|     public static final Thread thread(boolean z, boolean z2, ClassLoader classLoader, String str, int i, final Function0<Unit> block) { | ||||
|         Intrinsics.checkNotNullParameter(block, "block"); | ||||
|         ?? r0 = new Thread() { // from class: kotlin.concurrent.ThreadsKt$thread$thread$1 | ||||
|             @Override // java.lang.Thread, java.lang.Runnable | ||||
|             public void run() { | ||||
|                 block.invoke(); | ||||
|             } | ||||
|         }; | ||||
|         if (z2) { | ||||
|             r0.setDaemon(true); | ||||
|         } | ||||
|         if (i > 0) { | ||||
|             r0.setPriority(i); | ||||
|         } | ||||
|         if (str != null) { | ||||
|             r0.setName(str); | ||||
|         } | ||||
|         if (classLoader != null) { | ||||
|             r0.setContextClassLoader(classLoader); | ||||
|         } | ||||
|         if (z) { | ||||
|             r0.start(); | ||||
|         } | ||||
|         return (Thread) r0; | ||||
|     } | ||||
|  | ||||
|     private static final <T> T getOrSet(ThreadLocal<T> threadLocal, Function0<? extends T> function0) { | ||||
|         Intrinsics.checkNotNullParameter(threadLocal, "<this>"); | ||||
|         Intrinsics.checkNotNullParameter(function0, "default"); | ||||
|         T t = threadLocal.get(); | ||||
|         if (t != null) { | ||||
|             return t; | ||||
|         } | ||||
|         T invoke = function0.invoke(); | ||||
|         threadLocal.set(invoke); | ||||
|         return invoke; | ||||
|     } | ||||
| } | ||||
| @@ -0,0 +1,23 @@ | ||||
| package kotlin.concurrent; | ||||
|  | ||||
| import java.util.TimerTask; | ||||
| import kotlin.Metadata; | ||||
| import kotlin.Unit; | ||||
| import kotlin.jvm.functions.Function1; | ||||
|  | ||||
| /* compiled from: Timer.kt */ | ||||
| @Metadata(d1 = {"\u0000\u0011\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u0002\n\u0000*\u0001\u0000\b\n\u0018\u00002\u00020\u0001J\b\u0010\u0002\u001a\u00020\u0003H\u0016¨\u0006\u0004"}, d2 = {"kotlin/concurrent/TimersKt$timerTask$1", "Ljava/util/TimerTask;", "run", "", "kotlin-stdlib"}, k = 1, mv = {1, 8, 0}, xi = 176) | ||||
| /* loaded from: classes.dex */ | ||||
| public final class TimersKt$timerTask$1 extends TimerTask { | ||||
|     final /* synthetic */ Function1<TimerTask, Unit> $action; | ||||
|  | ||||
|     /* JADX WARN: Multi-variable type inference failed */ | ||||
|     public TimersKt$timerTask$1(Function1<? super TimerTask, Unit> function1) { | ||||
|         this.$action = function1; | ||||
|     } | ||||
|  | ||||
|     @Override // java.util.TimerTask, java.lang.Runnable | ||||
|     public void run() { | ||||
|         this.$action.invoke(this); | ||||
|     } | ||||
| } | ||||
							
								
								
									
										165
									
								
								02-Easy5/E5/sources/kotlin/concurrent/TimersKt.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										165
									
								
								02-Easy5/E5/sources/kotlin/concurrent/TimersKt.java
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,165 @@ | ||||
| package kotlin.concurrent; | ||||
|  | ||||
| import androidx.constraintlayout.core.motion.utils.TypedValues; | ||||
| import java.util.Date; | ||||
| import java.util.Timer; | ||||
| import java.util.TimerTask; | ||||
| import kotlin.Metadata; | ||||
| import kotlin.Unit; | ||||
| import kotlin.jvm.functions.Function1; | ||||
| import kotlin.jvm.internal.Intrinsics; | ||||
|  | ||||
| /* compiled from: Timer.kt */ | ||||
| @Metadata(d1 = {"\u00004\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u000e\n\u0000\n\u0002\u0010\u000b\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\t\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0010\u0002\n\u0002\u0018\u0002\n\u0002\b\b\u001aM\u0010\u0000\u001a\u00020\u00012\n\b\u0002\u0010\u0002\u001a\u0004\u0018\u00010\u00032\b\b\u0002\u0010\u0004\u001a\u00020\u00052\u0006\u0010\u0006\u001a\u00020\u00072\u0006\u0010\b\u001a\u00020\t2\u0019\b\u0004\u0010\n\u001a\u0013\u0012\u0004\u0012\u00020\f\u0012\u0004\u0012\u00020\r0\u000b¢\u0006\u0002\b\u000eH\u0087\bø\u0001\u0000\u001aO\u0010\u0000\u001a\u00020\u00012\n\b\u0002\u0010\u0002\u001a\u0004\u0018\u00010\u00032\b\b\u0002\u0010\u0004\u001a\u00020\u00052\b\b\u0002\u0010\u000f\u001a\u00020\t2\u0006\u0010\b\u001a\u00020\t2\u0019\b\u0004\u0010\n\u001a\u0013\u0012\u0004\u0012\u00020\f\u0012\u0004\u0012\u00020\r0\u000b¢\u0006\u0002\b\u000eH\u0087\bø\u0001\u0000\u001a\u001a\u0010\u0010\u001a\u00020\u00012\b\u0010\u0002\u001a\u0004\u0018\u00010\u00032\u0006\u0010\u0004\u001a\u00020\u0005H\u0001\u001aM\u0010\u0010\u001a\u00020\u00012\n\b\u0002\u0010\u0002\u001a\u0004\u0018\u00010\u00032\b\b\u0002\u0010\u0004\u001a\u00020\u00052\u0006\u0010\u0006\u001a\u00020\u00072\u0006\u0010\b\u001a\u00020\t2\u0019\b\u0004\u0010\n\u001a\u0013\u0012\u0004\u0012\u00020\f\u0012\u0004\u0012\u00020\r0\u000b¢\u0006\u0002\b\u000eH\u0087\bø\u0001\u0000\u001aO\u0010\u0010\u001a\u00020\u00012\n\b\u0002\u0010\u0002\u001a\u0004\u0018\u00010\u00032\b\b\u0002\u0010\u0004\u001a\u00020\u00052\b\b\u0002\u0010\u000f\u001a\u00020\t2\u0006\u0010\b\u001a\u00020\t2\u0019\b\u0004\u0010\n\u001a\u0013\u0012\u0004\u0012\u00020\f\u0012\u0004\u0012\u00020\r0\u000b¢\u0006\u0002\b\u000eH\u0087\bø\u0001\u0000\u001a'\u0010\u0011\u001a\u00020\f2\u0019\b\u0004\u0010\n\u001a\u0013\u0012\u0004\u0012\u00020\f\u0012\u0004\u0012\u00020\r0\u000b¢\u0006\u0002\b\u000eH\u0087\bø\u0001\u0000\u001a3\u0010\u0012\u001a\u00020\f*\u00020\u00012\u0006\u0010\u0013\u001a\u00020\u00072\u0019\b\u0004\u0010\n\u001a\u0013\u0012\u0004\u0012\u00020\f\u0012\u0004\u0012\u00020\r0\u000b¢\u0006\u0002\b\u000eH\u0087\bø\u0001\u0000\u001a;\u0010\u0012\u001a\u00020\f*\u00020\u00012\u0006\u0010\u0013\u001a\u00020\u00072\u0006\u0010\b\u001a\u00020\t2\u0019\b\u0004\u0010\n\u001a\u0013\u0012\u0004\u0012\u00020\f\u0012\u0004\u0012\u00020\r0\u000b¢\u0006\u0002\b\u000eH\u0087\bø\u0001\u0000\u001a3\u0010\u0012\u001a\u00020\f*\u00020\u00012\u0006\u0010\u0014\u001a\u00020\t2\u0019\b\u0004\u0010\n\u001a\u0013\u0012\u0004\u0012\u00020\f\u0012\u0004\u0012\u00020\r0\u000b¢\u0006\u0002\b\u000eH\u0087\bø\u0001\u0000\u001a;\u0010\u0012\u001a\u00020\f*\u00020\u00012\u0006\u0010\u0014\u001a\u00020\t2\u0006\u0010\b\u001a\u00020\t2\u0019\b\u0004\u0010\n\u001a\u0013\u0012\u0004\u0012\u00020\f\u0012\u0004\u0012\u00020\r0\u000b¢\u0006\u0002\b\u000eH\u0087\bø\u0001\u0000\u001a;\u0010\u0015\u001a\u00020\f*\u00020\u00012\u0006\u0010\u0013\u001a\u00020\u00072\u0006\u0010\b\u001a\u00020\t2\u0019\b\u0004\u0010\n\u001a\u0013\u0012\u0004\u0012\u00020\f\u0012\u0004\u0012\u00020\r0\u000b¢\u0006\u0002\b\u000eH\u0087\bø\u0001\u0000\u001a;\u0010\u0015\u001a\u00020\f*\u00020\u00012\u0006\u0010\u0014\u001a\u00020\t2\u0006\u0010\b\u001a\u00020\t2\u0019\b\u0004\u0010\n\u001a\u0013\u0012\u0004\u0012\u00020\f\u0012\u0004\u0012\u00020\r0\u000b¢\u0006\u0002\b\u000eH\u0087\bø\u0001\u0000\u0082\u0002\u0007\n\u0005\b\u009920\u0001¨\u0006\u0016"}, d2 = {"fixedRateTimer", "Ljava/util/Timer;", "name", "", "daemon", "", "startAt", "Ljava/util/Date;", TypedValues.CycleType.S_WAVE_PERIOD, "", "action", "Lkotlin/Function1;", "Ljava/util/TimerTask;", "", "Lkotlin/ExtensionFunctionType;", "initialDelay", "timer", "timerTask", "schedule", "time", "delay", "scheduleAtFixedRate", "kotlin-stdlib"}, k = 2, mv = {1, 8, 0}, xi = 48) | ||||
| /* loaded from: classes.dex */ | ||||
| public final class TimersKt { | ||||
|     private static final TimerTask schedule(Timer timer, long j, Function1<? super TimerTask, Unit> action) { | ||||
|         Intrinsics.checkNotNullParameter(timer, "<this>"); | ||||
|         Intrinsics.checkNotNullParameter(action, "action"); | ||||
|         TimersKt$timerTask$1 timersKt$timerTask$1 = new TimersKt$timerTask$1(action); | ||||
|         timer.schedule(timersKt$timerTask$1, j); | ||||
|         return timersKt$timerTask$1; | ||||
|     } | ||||
|  | ||||
|     private static final TimerTask schedule(Timer timer, Date time, Function1<? super TimerTask, Unit> action) { | ||||
|         Intrinsics.checkNotNullParameter(timer, "<this>"); | ||||
|         Intrinsics.checkNotNullParameter(time, "time"); | ||||
|         Intrinsics.checkNotNullParameter(action, "action"); | ||||
|         TimersKt$timerTask$1 timersKt$timerTask$1 = new TimersKt$timerTask$1(action); | ||||
|         timer.schedule(timersKt$timerTask$1, time); | ||||
|         return timersKt$timerTask$1; | ||||
|     } | ||||
|  | ||||
|     private static final TimerTask schedule(Timer timer, long j, long j2, Function1<? super TimerTask, Unit> action) { | ||||
|         Intrinsics.checkNotNullParameter(timer, "<this>"); | ||||
|         Intrinsics.checkNotNullParameter(action, "action"); | ||||
|         TimersKt$timerTask$1 timersKt$timerTask$1 = new TimersKt$timerTask$1(action); | ||||
|         timer.schedule(timersKt$timerTask$1, j, j2); | ||||
|         return timersKt$timerTask$1; | ||||
|     } | ||||
|  | ||||
|     private static final TimerTask schedule(Timer timer, Date time, long j, Function1<? super TimerTask, Unit> action) { | ||||
|         Intrinsics.checkNotNullParameter(timer, "<this>"); | ||||
|         Intrinsics.checkNotNullParameter(time, "time"); | ||||
|         Intrinsics.checkNotNullParameter(action, "action"); | ||||
|         TimersKt$timerTask$1 timersKt$timerTask$1 = new TimersKt$timerTask$1(action); | ||||
|         timer.schedule(timersKt$timerTask$1, time, j); | ||||
|         return timersKt$timerTask$1; | ||||
|     } | ||||
|  | ||||
|     private static final TimerTask scheduleAtFixedRate(Timer timer, long j, long j2, Function1<? super TimerTask, Unit> action) { | ||||
|         Intrinsics.checkNotNullParameter(timer, "<this>"); | ||||
|         Intrinsics.checkNotNullParameter(action, "action"); | ||||
|         TimersKt$timerTask$1 timersKt$timerTask$1 = new TimersKt$timerTask$1(action); | ||||
|         timer.scheduleAtFixedRate(timersKt$timerTask$1, j, j2); | ||||
|         return timersKt$timerTask$1; | ||||
|     } | ||||
|  | ||||
|     private static final TimerTask scheduleAtFixedRate(Timer timer, Date time, long j, Function1<? super TimerTask, Unit> action) { | ||||
|         Intrinsics.checkNotNullParameter(timer, "<this>"); | ||||
|         Intrinsics.checkNotNullParameter(time, "time"); | ||||
|         Intrinsics.checkNotNullParameter(action, "action"); | ||||
|         TimersKt$timerTask$1 timersKt$timerTask$1 = new TimersKt$timerTask$1(action); | ||||
|         timer.scheduleAtFixedRate(timersKt$timerTask$1, time, j); | ||||
|         return timersKt$timerTask$1; | ||||
|     } | ||||
|  | ||||
|     public static final Timer timer(String str, boolean z) { | ||||
|         return str == null ? new Timer(z) : new Timer(str, z); | ||||
|     } | ||||
|  | ||||
|     static /* synthetic */ Timer timer$default(String str, boolean z, long j, long j2, Function1 action, int i, Object obj) { | ||||
|         if ((i & 1) != 0) { | ||||
|             str = null; | ||||
|         } | ||||
|         if ((i & 2) != 0) { | ||||
|             z = false; | ||||
|         } | ||||
|         if ((i & 4) != 0) { | ||||
|             j = 0; | ||||
|         } | ||||
|         Intrinsics.checkNotNullParameter(action, "action"); | ||||
|         Timer timer = timer(str, z); | ||||
|         timer.schedule(new TimersKt$timerTask$1(action), j, j2); | ||||
|         return timer; | ||||
|     } | ||||
|  | ||||
|     private static final Timer timer(String str, boolean z, long j, long j2, Function1<? super TimerTask, Unit> action) { | ||||
|         Intrinsics.checkNotNullParameter(action, "action"); | ||||
|         Timer timer = timer(str, z); | ||||
|         timer.schedule(new TimersKt$timerTask$1(action), j, j2); | ||||
|         return timer; | ||||
|     } | ||||
|  | ||||
|     static /* synthetic */ Timer timer$default(String str, boolean z, Date startAt, long j, Function1 action, int i, Object obj) { | ||||
|         if ((i & 1) != 0) { | ||||
|             str = null; | ||||
|         } | ||||
|         if ((i & 2) != 0) { | ||||
|             z = false; | ||||
|         } | ||||
|         Intrinsics.checkNotNullParameter(startAt, "startAt"); | ||||
|         Intrinsics.checkNotNullParameter(action, "action"); | ||||
|         Timer timer = timer(str, z); | ||||
|         timer.schedule(new TimersKt$timerTask$1(action), startAt, j); | ||||
|         return timer; | ||||
|     } | ||||
|  | ||||
|     private static final Timer timer(String str, boolean z, Date startAt, long j, Function1<? super TimerTask, Unit> action) { | ||||
|         Intrinsics.checkNotNullParameter(startAt, "startAt"); | ||||
|         Intrinsics.checkNotNullParameter(action, "action"); | ||||
|         Timer timer = timer(str, z); | ||||
|         timer.schedule(new TimersKt$timerTask$1(action), startAt, j); | ||||
|         return timer; | ||||
|     } | ||||
|  | ||||
|     static /* synthetic */ Timer fixedRateTimer$default(String str, boolean z, long j, long j2, Function1 action, int i, Object obj) { | ||||
|         if ((i & 1) != 0) { | ||||
|             str = null; | ||||
|         } | ||||
|         if ((i & 2) != 0) { | ||||
|             z = false; | ||||
|         } | ||||
|         if ((i & 4) != 0) { | ||||
|             j = 0; | ||||
|         } | ||||
|         Intrinsics.checkNotNullParameter(action, "action"); | ||||
|         Timer timer = timer(str, z); | ||||
|         timer.scheduleAtFixedRate(new TimersKt$timerTask$1(action), j, j2); | ||||
|         return timer; | ||||
|     } | ||||
|  | ||||
|     private static final Timer fixedRateTimer(String str, boolean z, long j, long j2, Function1<? super TimerTask, Unit> action) { | ||||
|         Intrinsics.checkNotNullParameter(action, "action"); | ||||
|         Timer timer = timer(str, z); | ||||
|         timer.scheduleAtFixedRate(new TimersKt$timerTask$1(action), j, j2); | ||||
|         return timer; | ||||
|     } | ||||
|  | ||||
|     static /* synthetic */ Timer fixedRateTimer$default(String str, boolean z, Date startAt, long j, Function1 action, int i, Object obj) { | ||||
|         if ((i & 1) != 0) { | ||||
|             str = null; | ||||
|         } | ||||
|         if ((i & 2) != 0) { | ||||
|             z = false; | ||||
|         } | ||||
|         Intrinsics.checkNotNullParameter(startAt, "startAt"); | ||||
|         Intrinsics.checkNotNullParameter(action, "action"); | ||||
|         Timer timer = timer(str, z); | ||||
|         timer.scheduleAtFixedRate(new TimersKt$timerTask$1(action), startAt, j); | ||||
|         return timer; | ||||
|     } | ||||
|  | ||||
|     private static final Timer fixedRateTimer(String str, boolean z, Date startAt, long j, Function1<? super TimerTask, Unit> action) { | ||||
|         Intrinsics.checkNotNullParameter(startAt, "startAt"); | ||||
|         Intrinsics.checkNotNullParameter(action, "action"); | ||||
|         Timer timer = timer(str, z); | ||||
|         timer.scheduleAtFixedRate(new TimersKt$timerTask$1(action), startAt, j); | ||||
|         return timer; | ||||
|     } | ||||
|  | ||||
|     private static final TimerTask timerTask(Function1<? super TimerTask, Unit> action) { | ||||
|         Intrinsics.checkNotNullParameter(action, "action"); | ||||
|         return new TimersKt$timerTask$1(action); | ||||
|     } | ||||
| } | ||||
							
								
								
									
										11
									
								
								02-Easy5/E5/sources/kotlin/concurrent/VolatileKt.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								02-Easy5/E5/sources/kotlin/concurrent/VolatileKt.java
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
| package kotlin.concurrent; | ||||
|  | ||||
| import kotlin.Metadata; | ||||
|  | ||||
| /* compiled from: Volatile.kt */ | ||||
| @Metadata(d1 = {"\u0000\u0014\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0000*\u001e\b\u0007\u0010\u0000\"\u00020\u00012\u00020\u0001B\f\b\u0002\u0012\b\b\u0003\u0012\u0004\b\b(\u0004B\u0002\b\u0005¨\u0006\u0006"}, d2 = {"Volatile", "Lkotlin/jvm/Volatile;", "Lkotlin/SinceKotlin;", "version", "1.9", "Lkotlin/ExperimentalStdlibApi;", "kotlin-stdlib"}, k = 2, mv = {1, 8, 0}, xi = 48) | ||||
| /* loaded from: classes.dex */ | ||||
| public final class VolatileKt { | ||||
|     public static /* synthetic */ void Volatile$annotations() { | ||||
|     } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user