use of org.flyte.api.v1.Node in project gridgain by gridgain.
the class GridConcurrentLinkedDequeMultiThreadedTest method testQueueMultiThreaded.
/**
* @throws Exception If failed.
*/
@Test
public void testQueueMultiThreaded() throws Exception {
final AtomicBoolean done = new AtomicBoolean();
final ConcurrentLinkedDeque8<Byte> queue = new ConcurrentLinkedDeque8<>();
// Poll thread.
IgniteInternalFuture<?> pollFut = multithreadedAsync(new Callable<Object>() {
@Nullable
@Override
public Object call() throws Exception {
info("Thread started.");
while (!done.get()) try {
queue.poll();
} catch (Throwable t) {
error("Error in poll thread.", t);
done.set(true);
}
info("Thread finished.");
return null;
}
}, 5, "queue-poll");
// Producer thread.
IgniteInternalFuture<?> prodFut = multithreadedAsync(new Callable<Object>() {
@Nullable
@Override
public Object call() throws Exception {
info("Thread started.");
while (!done.get()) {
Node<Byte> n = queue.addx((byte) 1);
if (RND.nextBoolean())
queue.unlinkx(n);
}
info("Thread finished.");
return null;
}
}, 5, "queue-prod");
Thread.sleep(20 * 1000);
done.set(true);
pollFut.get();
prodFut.get();
}
use of org.flyte.api.v1.Node in project JavaProgrames by srv-shivam.
the class ReverseKNodes method main.
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
PracticeLinkedList2 list = new PracticeLinkedList2();
System.out.print("Enter elements : ");
while (true) {
int data = sc.nextInt();
if (data == -1)
break;
list.add(data);
}
System.out.print("\nElements : ");
list.display();
System.out.print("\nEnter value of k : ");
int K = sc.nextInt();
System.out.print("\nElements after reverse : ");
Node node = list.reverseKgroup(list.head, K);
// list.reverse_K_Nodes(K);
list.display();
}
use of org.flyte.api.v1.Node in project JavaProgrames by srv-shivam.
the class ReverseKNodes method reverseKgroup.
public Node reverseKgroup(Node head, int k) {
if (head == null)
return null;
Node previous = null;
Node current = head;
Node next = current.next;
int count = 0;
while (current != null && count < k) {
next = current.next;
current.next = previous;
previous = current;
current = next;
++count;
}
if (next != null) {
head.next = reverseKgroup(next, k);
}
PracticeLinkedList2.head = previous;
return previous;
}
use of org.flyte.api.v1.Node in project JavaProgrames by srv-shivam.
the class ReverseKNodes method display.
public void display() {
if (head == null)
return;
Node temp = head;
while (temp != null) {
System.out.print(temp.data + " --> ");
temp = temp.next;
}
System.out.print("null");
}
Aggregations