elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


Tema destacado:


+  Foro de elhacker.net
|-+  Foros Generales
| |-+  Dudas Generales (Moderador: engel lex)
| | |-+  Problema en codigo
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema en codigo  (Leído 1,440 veces)
Geordan

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Problema en codigo
« en: 27 Mayo 2013, 00:16 am »

Buenas tardes espero me puedan ayudar estoy generando esta solcuion con clases y todo  estaba bien pero al implemtar hilos me sale un error a  cua ndo me devuelvo al menu principal  el error dice  excepcion no controlada: system.threading.threadstateexception:subproceso en ejecucion o  no terminado ;no se puede reiniciar

Imports System.Threading
Module Module1
    Dim numeros As Integer
    Dim menu As Integer
    Dim objdetallefactura As detallefactura = New detallefactura
    Dim buscar As String
    Dim contador As Integer
    Dim hilo1 As New Thread(AddressOf subhilo1)
    Dim hilo2 As New Thread(AddressOf subhilo2)
    Dim hilo3 As New Thread(AddressOf subhilo3)
    Public Sub subhilo1(ByVal Parametro As Object)
        Try
            Console.WriteLine("Menu Capturar")
            Console.WriteLine("1) Cliente")
            Console.WriteLine("2) Factura")
            Console.WriteLine("3) Producto")
            Console.WriteLine("4) Detalle Factura")
            Console.WriteLine("5) Salir ")
            Console.WriteLine("Escoja una opcion")
            menu = (Integer.Parse(Console.ReadLine()))
            Select Case menu
                Case 1
                    Console.Write("Ingrese la ID del cliente: ")
                    objdetallefactura.id1 = Integer.Parse(Console.ReadLine)
                    Console.Write("Ingrese el nombre del cliente: ")
                    objdetallefactura.nombre1 = Console.ReadLine
                    Console.Write("Ingrese el Nit del cliente: ")
                    objdetallefactura.nit1 = Integer.Parse(Console.ReadLine)
                    Console.Write("Ingrese direccion del cliente: ")
                    objdetallefactura.direccion1 = Console.ReadLine
                    Console.Write("Ingrese ciudad del cliente: ")
                    objdetallefactura.ciudad1 = Console.ReadLine
                    Console.Write("Ingrese telefono del cliente: ")
                    objdetallefactura.telefono1 = Integer.Parse(Console.ReadLine)
                    Console.WriteLine("")
                    Console.WriteLine("Menu opciones")
                    Console.WriteLine("1. Salir a menu principal")
                    Console.WriteLine("2. Salir del aplicativo")
                    Console.Write("Escoja que opción desea realizar: ")
                    menu = Integer.Parse(Console.ReadLine)
                    Select Case menu
                        Case 1
                            hilo3.Start()
                        Case Else
                            Console.WriteLine("Opcion invalida")
                            contador = 0
                    End Select
                Case 2
                    Console.Write("Ingrese la ID de la factura: ")
                    objdetallefactura.idfactura1 = Integer.Parse(Console.ReadLine)
                    Console.Write("Ingrese el numero de la factura: ")
                    objdetallefactura.numero1 = Integer.Parse(Console.ReadLine)
                    Console.Write("Ingrese la fecha de la factura con el formato dia/mes/año (DD/MM/AAAA) : ")
                    objdetallefactura.fecha1 = Console.ReadLine
                    Console.Write("Ingrese subtotal de la factura: ")
                    objdetallefactura.subtotal1 = Double.Parse(Console.ReadLine)
                    Console.Write("Ingrese IVA de la factura: ")
                    objdetallefactura.iva1 = Double.Parse(Console.ReadLine)
                    Console.Write("Ingrese el grantotal de la factura: ")
                    objdetallefactura.grantotal1 = Double.Parse(Console.ReadLine)
                    Console.WriteLine("")
                    Console.WriteLine("Menu opciones")
                    Console.WriteLine("1. Salir a menu principal")
                    Console.WriteLine("2. Salir del aplicativo")
                    Console.Write("Escoja que opción desea realizar: ")
                    menu = Integer.Parse(Console.ReadLine)
                    Select Case menu
                        Case 1
                            hilo3.Start()
                        Case Else
                            Console.WriteLine("Opcion invalida")
                            contador = 0
                    End Select
                Case 3
                    Console.Write("Ingrese ID del producto: ")
                    objdetallefactura.Idproducto1 = Integer.Parse(Console.ReadLine)
                    Console.Write("Ingrese descripcion del producto: ")
                    objdetallefactura.descripcion1 = Integer.Parse(Console.ReadLine)
                    Console.Write("Ingrese valor unitario del producto: ")
                    objdetallefactura.valorunitario1 = Integer.Parse(Console.ReadLine)
                    Console.WriteLine("")
                    Console.WriteLine("Menu opciones")
                    Console.WriteLine("1. Salir a menu principal")
                    Console.WriteLine("2. Salir del aplicativo")
                    Console.Write("Escoja que opción desea realizar: ")
                    menu = Integer.Parse(Console.ReadLine)
                    Select Case menu
                        Case 1
                            hilo3.Start()
                            hilo1.Abort()
                        Case Else
                            Console.WriteLine("Opcion invalida")
                            contador = 0
                    End Select
                Case 4
                    Console.Write("Ingrese ID detalle factura: ")
                    objdetallefactura.iddetalle = Integer.Parse(Console.ReadLine)
                    Console.Write("Ingrese cantidad detalle factura: ")
                    objdetallefactura.cantidad1 = Integer.Parse(Console.ReadLine)
                    Console.Write("Ingrese valor total detalle factura: ")
                    objdetallefactura.valortotal1 = Integer.Parse(Console.ReadLine)
                    Console.WriteLine("")
                    Console.WriteLine("Menu opciones")
                    Console.WriteLine("1. Salir a menu principal")
                    Console.WriteLine("2. Salir del aplicativo")
                    Console.Write("Escoja que opción desea realizar: ")
                    Select Case menu
                        Case 1
                            hilo3.Start()
                            hilo1.Abort()
                        Case Else
                            Console.WriteLine("Opcion invalida")
                            contador = 0
                    End Select
                    hilo3.Start()
                    hilo1.Abort()
                Case Else
                    Console.WriteLine("Opcion invalida")
                    contador = 0
            End Select
        Catch ex As ThreadAbortException
        End Try
    End Sub
    Public Sub subhilo2(ByVal parametri As Object)
        Console.WriteLine("Menu Consultar")
        Console.WriteLine("1) Cliente")
        Console.WriteLine("2) Factura")
        Console.WriteLine("3) Producto")
        Console.WriteLine("4) Detalle Factura")
        Console.WriteLine("5) Salir ")
        Console.WriteLine("Escoja una opcion")
        menu = (Integer.Parse(Console.ReadLine()))
        Console.WriteLine("")
        Select Case menu
            Case 1
                Console.WriteLine("Cliente:")
                Console.WriteLine("Digite id cliente para buscar datos:")
                buscar = Console.ReadLine
                If buscar = objdetallefactura.id1 Then
                    Console.WriteLine("ID del cliente= {0}", objdetallefactura.id1)
                    Console.WriteLine("Nombre del cliente= {0}", objdetallefactura.nombre1)
                    Console.WriteLine("Nit del cliente= {0}", objdetallefactura.nit1)
                    Console.WriteLine("Direccion del cliente= {0}", objdetallefactura.direccion1)
                    Console.WriteLine("Ciudad del cliente= {0}", objdetallefactura.ciudad1)
                    Console.WriteLine("Telefono del cliente= {0}", objdetallefactura.telefono1)
                    Console.WriteLine("")
                    Console.WriteLine("Menu opciones")
                    Console.WriteLine("1. Salir a menu principal")
                    Console.WriteLine("2. Salir del aplicativo")
                    Console.Write("Escoja que opción desea realizar: ")
                    Console.WriteLine("")
                    menu = Integer.Parse(Console.ReadLine)
                    Select Case menu
                        Case 1
                            menu = 0
                            contador = 1
                        Case 2
                            menu = 0
                            contador = 0
                        Case Else
                            Console.WriteLine("Opcion invalida")
                            contador = 0
                    End Select
                Else
                    Console.WriteLine("No se encuentra el id digitado")
                    Console.WriteLine("")
                    Console.WriteLine("Menu opciones")
                    Console.WriteLine("1. Salir a menu principal")
                    Console.WriteLine("2. Salir del aplicativo")
                    Console.Write("Escoja que opción desea realizar: ")
                    menu = Integer.Parse(Console.ReadLine)
                    Select Case menu
                        Case 1
                            menu = 0
                            contador = 1
                        Case 2
                            menu = 0
                            contador = 0
                        Case Else
                            Console.WriteLine("Opcion invalida")
                            contador = 0
                    End Select
                End If
            Case 2
                Console.WriteLine("Factura:")
                Console.WriteLine("Digite id factura para buscar datos:")
                buscar = Console.ReadLine
                If buscar = objdetallefactura.idfactura1 Then
                    Console.WriteLine("ID factura= {0}", objdetallefactura.idfactura1)
                    Console.WriteLine("Numero factura= {0}", objdetallefactura.numero1)
                    Console.WriteLine("Fecha factura= {0}", objdetallefactura.fecha1)
                    Console.WriteLine("Subtotal factura= {0}", objdetallefactura.subtotal1)
                    Console.WriteLine("Iva factura= {0}", objdetallefactura.iva1)
                    Console.WriteLine("Gran  total factura= {0}", objdetallefactura.grantotal1)
                    Console.WriteLine("")
                    Console.WriteLine("Menu opciones")
                    Console.WriteLine("1. Salir a menu principal")
                    Console.WriteLine("2. Salir del aplicativo")
                    Console.Write("Escoja que opción desea realizar: ")
                    Console.WriteLine("")
                    menu = Integer.Parse(Console.ReadLine)
                    Select Case menu
                        Case 1
                            menu = 0
                            contador = 1
                        Case 2
                            menu = 0
                            contador = 0
                        Case Else
                            Console.WriteLine("Opcion invalida")
                            contador = 0
                    End Select
                Else
                    Console.WriteLine("No se encuentra el id digitado")
                    Console.WriteLine("")
                    Console.WriteLine("Menu opciones")
                    Console.WriteLine("1. Salir a menu principal")
                    Console.WriteLine("2. Salir del aplicativo")
                    Console.Write("Escoja que opción desea realizar: ")
                    menu = Integer.Parse(Console.ReadLine)
                    Select Case menu
                        Case 1
                            menu = 0
                            contador = 1
                        Case 2
                            menu = 0
                            contador = 0
                        Case Else
                            Console.WriteLine("Opcion invalida")
                            contador = 0
                    End Select
                End If
            Case 3
                Console.WriteLine("Producto:")
                Console.WriteLine("Digite id producto para buscar datos:")
                buscar = Console.ReadLine
                If buscar = objdetallefactura.Idproducto1 Then
                    Console.WriteLine("ID Producto= {0}", objdetallefactura.Idproducto1)
                    Console.WriteLine("Descripcion Producto= {0}", objdetallefactura.descripcion1)
                    Console.WriteLine("Valor unitatio Producto= {0}", objdetallefactura.valorunitario1)
                    Console.WriteLine("")
                    Console.WriteLine("Menu opciones")
                    Console.WriteLine("1. Salir a menu principal")
                    Console.WriteLine("2. Salir del aplicativo")
                    Console.Write("Escoja que opción desea realizar: ")
                    Console.WriteLine("")
                    menu = Integer.Parse(Console.ReadLine)
                    Select Case menu
                        Case 1
                            menu = 0
                            contador = 1
                        Case 2
                            menu = 0
                            contador = 0
                        Case Else
                            Console.WriteLine("Opcion invalida")
                            contador = 0
                    End Select
                Else
                    Console.WriteLine("No se encuentra el id digitado")
                    Console.WriteLine("")
                    Console.WriteLine("Menu opciones")
                    Console.WriteLine("1. Salir a menu principal")
                    Console.WriteLine("2. Salir del aplicativo")
                    Console.Write("Escoja que opción desea realizar: ")
                    menu = Integer.Parse(Console.ReadLine)
                    Select Case menu
                        Case 1
                            menu = 0
                            contador = 1
                        Case 2
                            menu = 0
                            contador = 0
                        Case Else
                            Console.WriteLine("Opcion invalida")
                            contador = 0
                    End Select
                End If
            Case 4
                Console.WriteLine("Detalle Factura:")
                Console.WriteLine("Digite id detalle factura para buscar datos:")
                buscar = Console.ReadLine
                If buscar = objdetallefactura.iddetalle Then
                    Console.WriteLine("ID detalle factura= {0}", objdetallefactura.iddetalle)
                    Console.WriteLine("Cantidad detalle factura= {0}", objdetallefactura.cantidad1)
                    Console.WriteLine("Valor total detalle factura= {0}", objdetallefactura.valortotal1)
                    Console.WriteLine("")
                    Console.WriteLine("Menu opciones")
                    Console.WriteLine("1. Salir a menu principal")
                    Console.WriteLine("2. Salir del aplicativo")
                    Console.Write("Escoja que opción desea realizar: ")
                    Console.WriteLine("")
                    menu = Integer.Parse(Console.ReadLine)
                    Select Case menu
                        Case 1
                            menu = 0
                            contador = 1
                        Case 2
                            menu = 0
                            contador = 0
                        Case Else
                            Console.WriteLine("Opcion invalida")
                            contador = 0
                    End Select
                Else
                    Console.WriteLine("No se encuentra el id digitado")
                    Console.WriteLine("")
                    Console.WriteLine("Menu opciones")
                    Console.WriteLine("1. Salir a menu principal")
                    Console.WriteLine("2. Salir del aplicativo")
                    Console.Write("Escoja que opción desea realizar: ")
                    menu = Integer.Parse(Console.ReadLine)
                    Select Case menu
                        Case 1
                            menu = 0
                            contador = 1
                        Case 2
                            menu = 0
                            contador = 0
                        Case Else
                            Console.WriteLine("Opcion invalida")
                            contador = 0
                    End Select
                End If
            Case 5
                contador = 0
            Case Else
                Console.WriteLine("Opcion invalida")
                contador = 0
        End Select
    End Sub
    Public Sub subhilo3(ByVal paramtro As Object)
        contador = 1
        While contador = 1
            contador += 1
            Console.WriteLine("Menu Principal")
            Console.WriteLine("1) Capturar")
            Console.WriteLine("2) Consultar")
            Console.WriteLine("3) Salir Programa")
            Console.WriteLine("Escoja una opcion")
            menu = (Integer.Parse(Console.ReadLine()))
            Select Case menu
                Case 1
                    hilo1.Start()
                Case 2
                    hilo2.Start()
            End Select

        End While
    End Sub
    Sub Main()
        hilo3.Start()
    End Sub
End Module


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema con código
Programación Visual Basic
z3r0 Bug 7 2,721 Último mensaje 24 Noviembre 2005, 16:51 pm
por NYlOn
¿Cuál es la diferencia entre código objeto, código máquina y código binario?
Programación General
Aikanáro Anário 9 31,700 Último mensaje 23 Diciembre 2010, 15:19 pm
por pucheto
Extrayendo código fuente de una web (Problema con código generado por JS)
PHP
Littl3 4 9,173 Último mensaje 3 Marzo 2011, 04:13 am
por Nakp
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines