¿Te gustaría que este contenido siga siendo gratuito?, puedes apoyar al canal de las siguientes maneras: 1. Donaciones: www.paypal.me/LaGeekipedia 2. Desactivando Adblock y Adblock Plus en KZbin. 3. Compartiendo los vídeos del canal en foros y redes sociales. Cualquier opción es de gran ayuda. ¡Muchas gracias!
@jeanmmm81713 жыл бұрын
para quienes tiene problemas con que en un punto no se sincronizan y otras veces sí, lo que leí en un comentario abajo que respondía una pregunta es lo que hice y me funcionó. simplemente en vez de los 10 milisegundos, puse 100. y con ello me salió bien. espero les sirva.
@juancamiloparedeszamora848111 ай бұрын
Me sirvió lo de los 100 milisegundos, no se me sincronizaba con 10, muchas gracias.
@marcelosalas14974 жыл бұрын
Eres un Crack Ernesto, tienes una gran capacidad de Lógica, saludos y sigue así con tus tutoriales que gracias a ellos he aprendido bastante.
@SergioChedas2 жыл бұрын
buenisimo, lo explicas de forma facil y muy entendible, mejor que otros cursos de youtube!
@joaquincariola59706 жыл бұрын
Son muy buenos tus tutoriales amigo, por favor no dejes de hacer estos vídeos tan geniales, los compartiré con todos mis amigos, gracias maestro!
@vicentecancino34396 жыл бұрын
Te deseo lo mejor ernesto ;)
@jeffreyindri6 жыл бұрын
Excelente como siempre, Gracias
@LaGeekipediaDeErnesto6 жыл бұрын
¡Muchas gracias!, saludos.
@GianmarcoContreras4 жыл бұрын
Después de practicar mucho recién comprendi con totalidad como es que funcionan los hilos, sus parámetro, estados y sincronizacion
@Nbx-ox2lz6 жыл бұрын
eres el mejor, xfa no dejes de hacer videos
@jesusamadoralarconyancce5076 жыл бұрын
hola Ernesto me gusta mucho como explicas te deseo lo mejor. Soy de la especialidad de electrónica pero me gusta la informatica espero que hagas un curso de c++
@enriquerosario85872 жыл бұрын
Excelente. Me sincronizo dandole 10ms a los Sleeps en la ClasePrincipal y 2000ms en la Clases de los Hilos 1, 2, 3 y 4
@carlosperezruiz61214 жыл бұрын
De los mejores tutoriales, neta :')
@R3nZoMS6 жыл бұрын
Genial Ernesto, ya estaba esperando la nueva clase (:
@MARQUITOSGUALACBA6 жыл бұрын
Me parece que estan sincronizados pero es cuestion de tiempo para que se desincronicen porque se va acumulando un desfasaje que se va a ver reflejado en algun momento puede ser? hice la prueba disminuyendo los mil milisegundos a cien y aumentando las repeticiones a mil, en algunos casos se imprimio otra palabra. Es un poco confuso el tema, aun asi esta muy bien explicado tuve que volver a la clase 24 para recordar como funcionaba el sleep. Tu curso vale oro!
@gggggerman20084 жыл бұрын
yo preferiria colocar ese sleep al inicio dentro de cada for, y agregando un poquito mas de milisegundos a cada letra por ejemplo en la G pondria 0 al principio y 1300 al final, en la E pondria 100 al principio y 1200 al final, en la otra E pondria 200 al principio y 1100 al final, y en la K pondria 300 al principio y 1000 al final
@elvis80783 жыл бұрын
Te sere sincero perro. Te agradesco mucho por esto que haces
@blacktoom32543 жыл бұрын
Buena explicación Ernesto, aunque si es un poco complicadito por los temas del tiempo de trabajo de los Thread
@angelg.chavez34895 жыл бұрын
mi maestro de programacion me comento que mandarlos a dormir, o usar el metodo join es trampa, que se debe hacer con synchronize... que opinas?
@abimaelgarciadiaz4 жыл бұрын
Muy buen video y la explicación gracias.,..
@siegwardofcatarina96034 жыл бұрын
Una pena que este canal sea tan desconocido (pero mejor que la competencia en mis oposiciones no vea esto jejejeje, así tengo ventaja).Enseñas muy bien Ernesto,espero que tengas más alumnos en el futuro
@d-landjs3 жыл бұрын
Me encanto mucho este tutorial!!
@ismaelhernandez48983 жыл бұрын
A mí me funcionó dándole más tiempo a cada Hilo en la clase principal, supongo que conforme lee el programa tiene más tiempo para acomodar cada letra conforme el código Por ejemplo: Hilo1.start(); Try { HiloUno.sleep(50); } catch (InterruptedException e) Etc...
@mauriciomorales90732 жыл бұрын
En efecto, fue mi caso, cuando cambié en el for el limite de i a 10 pasaban cosas como poner GEEKE o GEK pero haciendo lo mismo que tú ya lo hizo bien
@kevinjimenez6143 Жыл бұрын
Después de ver tu comentario ya pude tener el mismo resultado. Gracias : ).
@acfus84895 жыл бұрын
Puedes reducir el tiempo que se toma de pausa en la clase a 100 millis asi seria mas rapido el proceso y siguen estandon bien sincronizados los hilos. PD: solo una observacion y gracias por el gran tutorial.
@barrienthosjesus84175 жыл бұрын
Gran video, y sobre todo gracia a ti he aprendido mucho de estos videos, aun que yo en este video maneje 5 hilos xd
@cesaraugustoluxmonroy604 Жыл бұрын
ha mi me sincronizo de esta manera, dando valor al sleep de la clase principal ej(10,12,14,16), de igual forma en las clases le di valores de (1000, 1002, 1004, 1006)
@victorcamacho11714 жыл бұрын
lo hice de una forma diferente, cree el for en la clase principal y ahi puse a trabajar los hilos jugando con el sleep
@jeancarlo33914 жыл бұрын
Excelente video crack !!
@TheNequis4 жыл бұрын
Muchas Gracias Crack!!!!!
@edynsonmunozjimenez3995 жыл бұрын
en c y c++ me pueden bloquear y desbloquear hilos mediante semaforos y mutex, existen metodos similares en java? esto de los pausas mediante sleep creo que es un poco riesgosos ya que esta sujeto a la velocidad de los equipos.
@firthu-11752 жыл бұрын
Esto se puede considerar como un multi hilo?
@jorgechinchay17244 жыл бұрын
gracias por tus tutoriales
@thonatiu75155 жыл бұрын
Y que pasa con la Palabra recervada Synchronize?
@KAZA00212 жыл бұрын
Gracias!
@gasparsolis58033 жыл бұрын
Gracias.
@pchpgera11123 жыл бұрын
El valor del sleep de la clase principal debe ser menor al sleep de las clases hilo. Si es mayor o igual se desincroniza
@everthmarloniguaranuriana-81592 жыл бұрын
Esto aparenta la sincronización de hilos, para sincronizar hilos se crea un método sincronizado precediendo su declaración con la palabra clave synchronized. Lo que veo yo es que haces dormir(sleep) un hilo un tiempo para que el otro hilo haga primero la tarea y no se valla adelantar.
@mavisvermilion33534 жыл бұрын
muy buen video gracias
@l4vos993 жыл бұрын
pregunta. en java hay semáforos, memoria compartida y tuberías??
@mefestopat68706 жыл бұрын
Hola ernesto queria saber si me podias dar una idea de proyecto que realizar con los hilos
@alvarogonzalez2545 жыл бұрын
Excelente....
@michaeltorres27914 жыл бұрын
Y el uso de semaforos o monitores? como serian? ya que es otro metodo de sincronizacion.
@emmanuelherrera83594 жыл бұрын
Tengo una duda si se tuvieran dos hilos de Hilo2 como se sincronizarían para que estos no escriba dos veces G
@alexgameryt24946 жыл бұрын
Saludos bro 👍👍👍👍👍👍👍
@2012hearth5 жыл бұрын
Excelente Ernesto, muchas gracias. me asalta una duda y es la siguiente: Porqué al cambiar los valores de los mili segundos en la clase principal por ejemplo a 1000 en vez de 10 en todos los hilos, estos se descuadran. ¿ porque pasa esto?. Me gustaría saber exactamente porque se presenta esto.
@martinsandoval35 жыл бұрын
Esperaría el mismo tiempo para imprimir otra letra del ciclo del método de la clase y pasar ese mismo tiempo a otro hilo, imprimiendo simultáneamente sus valores.
@josemariafragozocruz43355 жыл бұрын
los 1000 milisegundos es el tiempo total en que se desarrollan los 4 o 5 procesos , o sea que a cada proceso le sirven 200 milisegundos y es suficiente , pero cuando bajas el valor, el espacio de tiempo para cada proceso disminuye tambien, y si es muy poco ya no se sincroniza.espero te sirva mi respuesta.
@pabloandresgonzalezgomez58844 жыл бұрын
Gracias por el vídeo, tengo una duda, no me sale en el orden como el vídeo, revise mi código y no encuentro diferencia, sera que de igual forma tiene que ver la capacidad de procesamiento de la maquina? Gracias, sigue adelante.
@PanchoDeYT3 жыл бұрын
Creo q si, cuando intento obtener “i” y mostrarla mi PC tarda tanto en obtener “i” que primero se llega a ejecutar el hilo2, de sincronizando todo
@elmervelazquez35493 жыл бұрын
@@PanchoDeYT xdxd cmamut
@elmervelazquez35493 жыл бұрын
@@PanchoDeYT toca jugar con los 10 milisegundos de la clase main puedes intentar poner 100 para que le de tiempo
@guillermocotrinavelasquez33016 жыл бұрын
Necesito entender la ejecucion del programa, entiendo el proceso. Que el try-catch en las clases hace que se ejecuten al mismo tiempo ya que en la principal se ejecutaria 1 por 1 como un bucle for cualquiera. Pero no entiendo exactamente el tiempo en que se duerme cada parte en la ejecucion, como es que esto: "Hilo1.sleep(10);" afecta drasticamente al programa para que se ejecute de esta manera: "GEEK". Te agradeceria mucho si me ayudas, ya que quisiera saber como jugar con el tiempo para ponerlo en practica
@barrienthosjesus84175 жыл бұрын
Bueno, no se si te sirva una respuesta de un estudiante y como yo lo entendí esque pausas el for por un segundo, como en el método main al ejecutar todos las clases con el .start(250) en tiempo aun te serviriria ya que 1000 milisegundo lo divides en los procesos que deseas hacer en este caso 4, te da como resultado 250 y si excedes de esa cantidad de tiempo bueno lo que quieres se imprimir de manera fea, y si la cantidad en mili segundos es menor o igual a esa cantidad te saldra tal como lo quieres en este caso n = cual quier numero y el proceso es (n: GEEK) hasta n cantidad de veces, si quieres agregar otro hilo tal es mi caso que maneje 5 clases y como nombre a tal clase fue Hilo0 bueno yo hizo una división para determinar cual es el tiempo en cantidad de mili segundo el cual no debo pasar, y en mi caso me dio 200, ese seria mi máxima cantidad que yo podría poner de retardo, aun que en el vídeo fue con 10 mili segundos y esta bien, ahora si quieres para que veas supera los 250 en caso de utilizar 4 procesos y veras que te aparece todo feo. Bueno ese fue mi entendimiento si te sirvió esta bien, sino pues ya ni modo xD, pero espero te sirva a un (^_^)
@brandonfernandezmejia14304 жыл бұрын
@@barrienthosjesus8417 gracias bro por la explicación
@rafaelmt86303 жыл бұрын
Crack
@codecr98203 жыл бұрын
Como podria usar un hilo para colocar un progragma (cronometro) dentro de un jframeform?
@holapopeye2 жыл бұрын
Esto es lo mismo que Semaforos??
@santiagovillarpando40482 жыл бұрын
porque es importante un sleep para cada hilo en la clase principal si solo se duerme 10 millis?
@isidrosalgado23006 жыл бұрын
Saludos
@rodrigogalvan83873 жыл бұрын
No se si soy yo solamente en ocasiones me lo imprime asi tan cual pero en ocasiones pasa que ejemplo imprime E0: GEK E1: GEK y asi se va en vez de 0: GEEK 1: GEEK --- repito en algunas ocasiones , se debe a mi computadora que le gana el otro hilo??
@charlyrtg9010 Жыл бұрын
A mi me pasaba lo mismo, lo pude resolver agregando mas tiempo al sleep de los hilos de la clase principal(en lugar de 10 milisegundos, lo cambie a 30 milisegundos), imagino que el problema se debe a la velocidad de procesamiento que tiene cada dispositivo.
@joserafaelsoli83335 жыл бұрын
Ernesto hay un problema y es que cuando uno ejecuta el hilo varias beces en unas de las ejecuciones el hilo hace lo que le da la gana
@dariogr63525 жыл бұрын
Todo bien pero cuando concateno la i me imprime así: EEK 0: GEEK 1: GEEK 2: GEEK 3: GEEK 4: GEEK 5: GBUILD SUCCESSFUL Y si la concateno al final en el hilo4 me imprime bien: GEEK :0 GEEK :1 GEEK :2 GEEK :3 GEEK :4 GEEK :5 BUILD SUCCESSFUL ¿A QUE SE DEBE?
@josemariafragozocruz43355 жыл бұрын
yo no se mucho pero pudiera ser que tienes un error en la enumeracion de los hilos, es decir tal vez nombraste hilo 0 a la letra E en vez de la letra G
@CuboDeAnti-materia4 жыл бұрын
A mí también me salía así, creo que eso depende de la velocidad de tu PC. Yo lo solucione aumentado el tiempo del los 'sleep(10)' que están en la clase principal debajo de cada hilo.
@ernestofavio67354 жыл бұрын
Como escribes el metodo main tan rapido?
@richie_joel4 жыл бұрын
psvm + tab
@slow_captain77854 жыл бұрын
p + Ctrl + Espacio
@alfonsovidrio63713 жыл бұрын
main + tab
@Openminder22 жыл бұрын
Salte desde este video al de raptor, me gusta más el programa de la Universidad del Litoral Pseint que se descarga gratis de Sourceforge y se configura para diferentes universidades. Ej: UNLZ
@bitman42045 жыл бұрын
Hola Ernesto, este método que propones no funciona muy bien , de cada 5 veces que lo ejecuto solo me anda bien una vez, las demás ocasiones escribe palabras de manera aleatoria con las letras "G, E, E, K" como por ejemplo: GEEK GEEK EGKE GEKE GEKE este resultado de medio después de una ejecución. ¿Existe alguna manera exacta de sincronizar los hilos?
@iansamueltrujillogil15825 жыл бұрын
La manera que propone Ernesto yo la realice y va de manera correcta lo probé unas 10 veces y siempre me lo escribe de una forma adecuada.
@fernandoflores_03096 жыл бұрын
Disculpen alguien sabe algunos lenguajes de programación o seudocodigos que utilicen solamente una condición? Ayudaaa
@rafaeldericksanchezlockwar49206 жыл бұрын
el mismo java puede hacer condicionanles con una sola condicion, solo necesitas poner if(condicion) sin utilizar el else{}
@anguilavigilante94544 жыл бұрын
Ahí no se está sincronizando ningún hilo, está jugando con el tiempo de sleep, para sincronizar hilos, yo utilizaría mejor el método join() pasándole dentro del constructor del hilo que quiero sincronizar el hilo a sincronizar como argumento y luego aplicarle el método
@RED-tj4is3 жыл бұрын
Como mi compu es bastante pedorra cuando le pongo lo de obtener 1 se me desincronizo y me imprimia las E antes que la G
@francris106 жыл бұрын
El metodo sleep no me aparece utilizando hilo1.sleep() Tengo que utilizar Thread.sleep(). Alguien me podria explicar porque pasa eso.
@maxsorto86996 жыл бұрын
Creaste la instancia de la clase donde se esta heredando la clase Thread?
@retroblackztar3 жыл бұрын
Esto si no lo entendi :/
@retroblackztar3 жыл бұрын
Me toco sacar lapiz y papel , convertir milisegundos en segundos para analizar y entenderlo :(
@jaimeeduardogrimaldomoreno99663 жыл бұрын
@@retroblackztar Esta muy bien explicado... El problema es cuando te exigen usar semáforos ya que ahi; eso si no le agarro la onda :c. Tenia la esperanza que lo explicarian aca pero no unu
@cher2354 жыл бұрын
Esto no es sincronizacion, solo estas durmiendo a los hilos, ni join() ni bloques sincronizados, mal video
@bigotes20random863 жыл бұрын
D:
@jos1327 Жыл бұрын
pero sirve para entender como se sincronizan los hilos ya usando eso de bloques de sincronizados, join??
@Mindy28123 жыл бұрын
public class Principal{ public static void main(String args[]){ HilosDos hilo1=new HilosDos(); HilosDos hilo2=new HilosDos(); HilosDos hilo3=new HilosDos(); HilosDos hilo4=new HilosDos(); hilo1.Letra("G"); hilo2.Letra("E"); hilo3.Letra("E"); hilo4.Letra("K "); hilo1.start(); try{ hilo1.sleep(10); }catch(InterruptedException e){ } hilo2.start(); try{ hilo2.sleep(10); }catch(InterruptedException e){ } hilo3.start(); try{ hilo3.sleep(10); }catch(InterruptedException e){ } hilo4.start(); try{ hilo4.sleep(10); }catch(InterruptedException e){ } } } Esta era mi logica solo que faltaba lo del indice al principio ahi ya me atore...