1
00:00:00,180 --> 00:00:00,780
Bienvenidos.

2
00:00:00,840 --> 00:00:05,420
Veamos como crear un stream infinito con el método estático generate.

3
00:00:05,580 --> 00:00:06,600
Bien, vamos a cerrar.

4
00:00:06,690 --> 00:00:08,640
Vamos a crear una nueva clase.

5
00:00:11,000 --> 00:00:12,110
Ejemplo Stream

6
00:00:15,710 --> 00:00:19,160
con generalato infinito bien método main.

7
00:00:23,330 --> 00:00:23,690
Stream?

8
00:00:24,350 --> 00:00:25,040
Punto.

9
00:00:25,180 --> 00:00:33,200
Bueno, como tremos el builder que tuvimos el empty para crear uno vacío, el off a partir de un arreglo

10
00:00:33,290 --> 00:00:39,200
o separado por comas, también tenemos el GENERATED que nos permite crear un flujo infinito, pero que

11
00:00:39,200 --> 00:00:41,170
también le podemos dar un límite y tem..

12
00:00:41,180 --> 00:00:46,850
Tenemos el concatenar que podemos tener dos extrem y unirlos en uno solo con el con Katt.

13
00:00:47,330 --> 00:00:48,720
Bien, probemos el generate.

14
00:00:49,430 --> 00:00:51,520
Entonces clic bien.

15
00:00:51,590 --> 00:00:55,040
Y acá tenemos una presión Lanta del tipo su player.

16
00:00:55,130 --> 00:00:57,950
Por lo tanto, devuelve un valor que estamos generando.

17
00:00:58,310 --> 00:01:02,540
Por supuesto que no se emite nada, no se recibe nada porque lo tenga que generar.

18
00:01:02,750 --> 00:01:09,740
Y acá devolvemos algo, por ejemplo Hola mundo perfecto y punto.

19
00:01:09,830 --> 00:01:10,450
forEach

20
00:01:14,100 --> 00:01:15,140
El prendé.

21
00:01:15,540 --> 00:01:17,540
Bien, veamos qué pasa si lo ejecutamos.

22
00:01:17,810 --> 00:01:23,390
Bueno, va a estar imprimiendo el mundo hasta el final de los tiempos de forma infinita, hasta que

23
00:01:23,390 --> 00:01:24,110
lo detengamos.

24
00:01:25,330 --> 00:01:27,070
Se fijan de forma infinita.

25
00:01:27,850 --> 00:01:28,480
Puede tener.

26
00:01:30,230 --> 00:01:34,120
Perfecto, pero le podemos dar un límite, por ejemplo, límite.

27
00:01:35,880 --> 00:01:38,820
Solamente que imita 20 elementos, nada más.

28
00:01:43,370 --> 00:01:43,890
20.

29
00:01:47,530 --> 00:01:48,640
Pero dentro del cuerpo.

30
00:01:48,910 --> 00:01:56,740
Acá podemos tener llaves, podemos crear un flujo a partir de cualquier información que tengamos disponible.

31
00:01:57,010 --> 00:01:57,670
En este caso.

32
00:01:57,740 --> 00:01:59,640
Bueno Croton.

33
00:01:59,950 --> 00:02:00,670
Hola mundo.

34
00:02:02,380 --> 00:02:11,070
Pero le podríamos dar un delay por ejemplo con contain unit punto ccon sleep.

35
00:02:11,320 --> 00:02:12,270
Le damos un delay.

36
00:02:12,430 --> 00:02:13,180
Una pausa.

37
00:02:13,270 --> 00:02:19,580
Es decir, cada un segundo o cada dos segundos que se emita un valor que estemos generando en este caso.

38
00:02:19,620 --> 00:02:19,930
Bueno.

39
00:02:20,020 --> 00:02:20,800
Algo simple.

40
00:02:20,860 --> 00:02:21,580
Hola mundo.

41
00:02:21,670 --> 00:02:22,450
El troi catch.

42
00:02:22,540 --> 00:02:23,590
Entonces stor el error.

43
00:02:24,100 --> 00:02:24,880
Any damos.

44
00:02:25,300 --> 00:02:27,730
Lo manejamos y vamos a probar.

45
00:02:29,230 --> 00:02:32,170
Entonces cada dos segundos se emite un valor.

46
00:02:32,380 --> 00:02:33,040
Hola mundo.

47
00:02:33,850 --> 00:02:35,670
Y así hasta llegar a 20.

48
00:02:40,060 --> 00:02:41,830
Bien, lo vamos a dejar en menos.

49
00:02:42,070 --> 00:02:44,440
No cree que unos 7 más que suficiente.

50
00:02:45,460 --> 00:02:46,780
Entonces volvemos a levantar.

51
00:03:02,010 --> 00:03:13,620
Y finaliza lo pudieron modificar, por ejemplo, un Atomico Integer, Contador igual New Atomic Integer,

52
00:03:13,640 --> 00:03:14,500
que comienza a cero.

53
00:03:15,710 --> 00:03:25,120
Bien, entonces en vez de devolver el string que devuelve a Contador, algo punto incrementar y obtener.

54
00:03:27,970 --> 00:03:28,750
Levantamos.

55
00:03:31,220 --> 00:03:33,420
En receiver de 1 hasta 7.

56
00:03:44,800 --> 00:03:51,160
7 elementos y finaliza Bueno, acá podríamos realizar alguna tarea en el generate cada cierto tiempo,

57
00:03:51,280 --> 00:03:56,650
a medida que se ejecuta durante siete veces o siete períodos y devolver algún resultado.

58
00:03:56,830 --> 00:03:58,960
Continuamos en la siguiente clase.
