Avanza de manera eficiente el motor 2^192 pasos

# Random\Engine\Xoshiro256StarStar::jumpLong

(PHP 8 >= 8.2.0)

Random\Engine\Xoshiro256StarStar::jumpLong — Avanza de manera eficiente el motor 2^192 pasos

### Descripción

public function Random\Engine\Xoshiro256StarStar::jumpLong(): void

Avanza el estado del algoritmo 2192 pasos, como si Random\Engine\Xoshiro256StarStar::generate() fuera llamado 2192 veces.

El objetivo de un salto largo es facilitar la creación de un nuevo Random\Engine\Xoshiro256StarStar a partir de un motor Random\Engine\Xoshiro256StarStar inicializado existente. El motor inicializado actúa como una plantilla, que puede ser clonada y saltada repetidamente para crear 264 secuencias no superpuestas con 2192 valores cada una.

Los saltos largos pueden combinarse con Random\Engine\Xoshiro256StarStar::jump() para dividir aún más cada una de las 264 secuencias generadas por un salto largo, en 264 secuencias de 2128 valores cada una.

### Parámetros

Esta función no contiene ningún parámetro.

### Valores devueltos

No se retorna ningún valor.

### Ejemplos

Ejemplo #1 Ejemplo de Random\Engine\Xoshiro256StarStar::jumpLong()

    <?php
    $blueprintRng = new \Random\Engine\Xoshiro256StarStar(0);

    // Cada motor padre tendrá su propio trozo de 2**192 valores.
    $parent1 = clone $blueprintRng;
    $blueprintRng->jumpLong();

    $parent2 = clone $blueprintRng;
    $blueprintRng->jumpLong();

    // Cada uno de los motores hijos tendrá su propio trozo de 2**128 valores
    // tomados del trozo de 2**192 valores de su motor padre.
    $child1a = clone $parent1;
    $parent1->jump();
    $child1b = clone $parent1;
    $parent1->jump();

    $child2a = clone $parent2;
    $parent2->jump();
    $child2b = clone $parent2;
    $parent2->jump();

    echo "Child 1A: ", bin2hex($child1a->generate()), "\n";
    echo "Child 1B: ", bin2hex($child1b->generate()), "\n";
    echo "Child 2A: ", bin2hex($child2a->generate()), "\n";
    echo "Child 2B: ", bin2hex($child2b->generate()), "\n";
    ?>

El ejemplo anterior mostrará:

    Child 1A: b4f275cb365fec99
    Child 1B: 2cd646c8ed156237
    Child 2A: eb3729a722a504e7
    Child 2B: d4208dc85bdd6dc3

### Ver también

- Random\Engine\Xoshiro256StarStar::jump() - Avanza el motor de manera eficiente 2^128 pasos

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open