Resultados 1 al 3 de 3

Velocidad de VB

  1. #1 Velocidad de VB 
    Medio
    Fecha de ingreso
    Dec 2005
    Mensajes
    84
    Descargas
    0
    Uploads
    0
    mm tengo un apregunta
    Un gringo osea no en vedad un ingles me dijo esto
    que este codigo (para un boton)

    Private Sub Command2_Click()
    Dim i As Long, StrS As String
    For i = 0 To 100000
    StrS = StrS & "."
    Next i
    MsgBox "Finished making a string of " & Len(StrS) & " Characters"
    End Sub

    cuando uno ejecuta el exe y apreta el boton se demora aprox 10 segundos en hacer 100000
    pero me dijo que este otro

    Private Sub Command1_Click()
    Dim i As Long, StrS As String
    StrS = Space(100000)
    For i = 1 To 100000
    Mid(StrS, i, 1) = "."
    Next i
    MsgBox "Finished making a string of " & Len(StrS) & " Characters"
    End Sub

    lo hacia mas rapido me dijo que era algo asi como la velocidad de c++ pero en visual basic ya que crea el espacio que nesesita antes de hacer la funcion... algo asi no entendi muy bien ^^ me lo dijo en ingles
    Citar  
     

  2. #2  
    Moderador HH
    Fecha de ingreso
    Dec 2001
    Ubicación
    Galiza
    Mensajes
    3.129
    Descargas
    0
    Uploads
    0
    Pues la verdad es que tendrías que comparar a nivel ensamblador cuantas instrucciones y espacios de memoria ocupa montar las dos versiones. Aunque hacen lo mismo hay formas y formas de hacer las cosas. Lo que no me cabe en la cabeza es pq la 2ª tarda menos si ocupa mas memoria.... supongo que es pq la segunda hace todo en memoria y la primera tiene que ir guardando valores temporales, pero es una suposición.
    Citar  
     

  3. #3  
    Moderador HH
    Fecha de ingreso
    Sep 2003
    Mensajes
    1.384
    Descargas
    21
    Uploads
    5
    En el primer caso cada vez que agrega "." a la cadena tiene que agrandarla en una posicion, pero en el segundo caso la longitud de la cadena se fija de una sola vez y despues se le van cambiando los espacion por "."s . O sea que la diferencia esta en la cantidad de operaciones en el bucle, en un caso agranda una cadena en una posicion y agrega un "." mientras que en el otro solo agrega un punto, si se tiene en cuenta que son 100000 veces las que sucede....

    Chau saludos
    Citar  
     

Temas similares

  1. Velocidad en red lan
    Por el fandy en el foro REDES Y TECNOLOGIAS WIRELESS
    Respuestas: 3
    Último mensaje: 08-10-2010, 23:53
  2. velocidad
    Por walvave en el foro REDES Y TECNOLOGIAS WIRELESS
    Respuestas: 0
    Último mensaje: 05-06-2009, 15:59
  3. Velocidad CPU
    Por Laura en el foro HARDWARE
    Respuestas: 2
    Último mensaje: 21-05-2003, 23:14
  4. velocidad con ONO
    Por angema en el foro REDES Y TECNOLOGIAS WIRELESS
    Respuestas: 0
    Último mensaje: 01-07-2002, 19:14
  5. velocidad agp
    Por Contr@ en el foro HARDWARE
    Respuestas: 1
    Último mensaje: 23-04-2002, 14:27

Marcadores

Marcadores