Duda post:Consultas en Paralelo(Comentario, UltimaDuda)

Hola amigo, otra vez por aquí
Primero un comentario:
No se si te interese saberlo o si te sirva, pero igual te lo comento:
Después de algunas pruebas, ves que el código del post sobre el que pregunte dice:
Pegale un control timer al Form, y cambiale la propiedad "Enabled" a "False" y "Interval" a "10"
Pegale este codigo al Form
Private iId As Long
Public Sub Procesar(ByVal Id As Long)
iId = Id
Timer1.Enabled = True
End Sub
Private Sub Timer1_Timer()
Timer1.Enabled = False
Dim i As Long
For i = 1 To 3
MsgBox "Proceso " & CStr(iId) & " iteración " & CStr(i)
Next
Unload Me
End Sub
Bueno, pues lo hice de la siguiente forma, y funcionó:
Al timer le deje su propiedad Enable por default, a True. Le indique un intervalo de 10.
y despues escribí:
Private VN As Integer
Public Sub MultiProcs(ValN As Integer)
VN = ValN
End Sub
Private Sub Timer1_Timer()
MsgBox VN
Unload Me
End Sub
Por lo que no es completamente necesario usar Enable=False, Enable=True, o los For.
Nada más te lo platico, si es que te interesaba...
Ahora, una ultima duda, que creo es la que no he conseguido entender por completo:
La opción de VB de Subprocesos por objeto, en este caso se aplica a los objetos Timer que se van generando, como me decías, cada uno en su hilo, ¿cierto?
Entonces mi pregunta acerca de los timer, es en si, que si se van generando objetos tipo form, desde que se carga con Load "formulario", y se llama a uno de sus procedimientos, Subprocesos por objeto no se debería aplicar a cada formulario nuevo, generado, estando cada uno de estos objetos "form" en hilos diferentes, ¿en lugar de que en los hilos estuvieran los timer?
¿Si me explique?
Bueno, en si es una duda complementaria. Ojala tengas un rato y me puedas explicar un poco porque es esto.
Otra vez, muchas gracias
Un saludo

1 Respuesta

Respuesta
1
Cuando tu creas un hilo.. por ejemplo en tu caso en vb6.. ese único hilo requiere el timer tal como te lo comente antes.. ahora el timer es para control de la ejecución de los procesos del hilo más no es que el hilo esta en el timer.
Cuando levantas un form por ejemplo lo que haces es creas la instancia del objeto y por ende de todos sus subprocesos que son controlados con un timer en un hilo independiente,
No obstante por ejemplo creo que usar hilos en frms.. no seria lo adecudo sino más bien en clases que el formulario invoque.. ¿no crees?
Ok, a ver si entendí:
Con lo primero que dices:
Al crear una instancia de un formulario, junto con sus procedimientos, controles, y demás, el hilo independiente, se genera al instanciar dicho formulario, y el timer controla el tiempo y el termino de la instanciacion del formulario, ¿es lo que quieres decir?
No entendí lo de "usar hilos en frms.. no seria lo adecudo sino más bien en clases que el formulario invoque"
Gracias... Saludos
Si es correcto como lo entendiste.. sobre lo otro.. lo que te quiero decir es que por ejemplo yo nunca le he puesto un hilo a un form.. sino a clases que son llamadas por el form en algún momento..
Excelente amigo!
Te agradezco nuevamente tus respuestas y tu tiempo...
Aquí seguiremos... aprendiendo de todos...
Muchas gracias
Un saludo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas