Skip to content

Instantly share code, notes, and snippets.

View orionll's full-sized avatar

jkozlov orionll

View GitHub Profile
import org.openjdk.jmh.annotations.Benchmark;
import org.openjdk.jmh.annotations.BenchmarkMode;
import org.openjdk.jmh.annotations.Mode;
import org.openjdk.jmh.annotations.OutputTimeUnit;
import org.openjdk.jmh.annotations.Param;
import org.openjdk.jmh.annotations.Scope;
import org.openjdk.jmh.annotations.Setup;
import org.openjdk.jmh.annotations.State;
import java.util.ArrayList;
@orionll
orionll / RussianJavaTelegramChannels.md
Last active November 30, 2023 14:20
Список русскоязычных Telegram-каналов про Java
import com.google.common.math.Stats;
import org.openjdk.jmh.annotations.Benchmark;
import org.openjdk.jmh.annotations.BenchmarkMode;
import org.openjdk.jmh.annotations.Mode;
import org.openjdk.jmh.annotations.OutputTimeUnit;
import org.openjdk.jmh.annotations.Param;
import org.openjdk.jmh.annotations.Scope;
import org.openjdk.jmh.annotations.Setup;
import org.openjdk.jmh.annotations.State;
@orionll
orionll / Sort.java
Last active November 13, 2018 12:47
import org.openjdk.jmh.annotations.*;
import java.util.Arrays;
import java.util.Random;
import java.util.concurrent.TimeUnit;
@BenchmarkMode(Mode.AverageTime)
@OutputTimeUnit(TimeUnit.MICROSECONDS)
@State(Scope.Thread)
public class Sort {
import java.lang.ref.WeakReference;
public final class Main {
public static void main(String... args) throws Throwable {
Integer i = new Integer(1);
WeakReference<Integer> ref = new WeakReference<>(i);
System.gc();
System.out.println(ref.get());
i.signum(0);
public final class Main {
public static void main(String... args) throws Throwable {
Integer i = new Integer(1);
WeakReference<Integer> ref = new WeakReference<>(i);
System.gc();
System.out.println(ref.get());
myStupidReachabilityFence(i);
}
@orionll
orionll / ArrayIterator.java
Created September 11, 2018 10:08
Bug in Array Iterator
public final class ArrayIterator<A> implements Iterator<A> {
private int i;
private final A[] array;
ArrayIterator(final A[] array) {
this.array = array;
}
@Override
public boolean hasNext() {
-- Файл ElmComponent.elm
module ElmComponent exposing (..)
import Html exposing (..)
import Html.Events exposing (onClick)
-- Простой компонент (кнопка со счётчиком)
type alias Model = { text : String , counter : Int }
type Msg = Inc
@orionll
orionll / ArrayListCreate.java
Last active April 11, 2017 04:27
new ArrayList vs. addAll
import org.openjdk.jmh.annotations.*;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.TimeUnit;
@BenchmarkMode(Mode.AverageTime)
@OutputTimeUnit(TimeUnit.MICROSECONDS)
@State(Scope.Thread)
public class ArrayListCreate {
@orionll
orionll / Fold.java
Last active August 29, 2015 14:22
Foldable typeclass in Java
import static fj.data.Option.none;
import static fj.data.Option.some;
import java.util.AbstractList;
import java.util.ArrayList;
import java.util.LinkedList;
import fj.*;
import fj.data.*;
import fj.data.List.Buffer;