Portal    Foro    Buscar    FAQ    Registrarse    Conectarse

[C] Funciones CallBack

[C] Funciones CallBack
Artículo
Responder citando    Descargar mensaje  
Mensaje [C] Funciones CallBack 
 
Siiiiiiiii!!!!!!!!!!!!!

Hace rato andaba dando vueltas con un tema que nunca pude resolver: Como hacer que un programa de signos de vida durante una larga  rutina en C sin alterar la velocidad de calculo.

C es 100 veces mas rapido que gambas y puede acelerar un programa que requiera, en algunos momentos, mucho procesamiento. Gracias al bueno de Benoit, gambas permite ser llamado desde "afuera", o sea desde otro programas no-Gambas o librerias. A modo de ayuda-memoria, lo explico:

Modulo con las declaraciones de la libreria C
Library "matrix8"  ' libreria externa en C

' Rutina que resuelve un sistea de ecuaciones con el metodo de Gauss
' al final de los argumentos, especifico la funcion de gambas que la libreria C va a llamar cada tanto para dar informacion de como va el proceso
' se declara como Pointer
Public Extern M8gauss(mfMatriz As Float[], vfIncognitas As Float[], vfTerminosInd As Float[], lOrden As Long, CallbackFunction As Pointer) As Long

 


Rutina que sera llamada desde C
Private Sub Porcentaje(avance As Integer)
    
    Debug "Progreso " & Format$(avance, "0.00") & "%")  

    Wait 0.01   ' esto mantiene al programa vivo  
End


Tipica llamada
...
resultado = modLibMatrix8.M8gauss(matrigest, vecdez, vecterind, modestru.ordmatrig, Porcentaje)
...

 


Parte de la rutina en C
long M8gauss(double *matriz, double *x, double * ti, long n ,  void (*cbGambas) (int) )
{

    // triangulacion
    for (i = 0;i<n;i++)
    {
        i1=i*n;


        cbGambas(i);  // Mantengo gambas informado de mi progreso


 



 
tercoIDE - Ver perfil del usuario Enviar mensaje privado  
tercoIDE [ Sabado, 29 Noviembre 2014, 13:52 ]
 


[C] Funciones CallBack
Comentarios
Responder citando    Descargar mensaje  
Mensaje Re: [C] Funciones CallBack 
 
tercoIDE:

Citar:
gambas permite ser llamado desde "afuera", o sea desde otro programas no-Gambas o librerias.

Guay!!!...Muy buena utilidad que le has dado.

Saludos

Julio



 
jsbsan - Ver perfil del usuario Enviar mensaje privado  
jsbsan [ Sabado, 29 Noviembre 2014, 22:05 ]
Responder citando    Descargar mensaje  
Mensaje Re: [C] Funciones CallBack 
 




 
última edición por vuott el Martes, 02 Diciembre 2014, 09:07; editado 1 vez 
vuott - Ver perfil del usuario Enviar mensaje privado  
vuott [ Domingo, 30 Noviembre 2014, 05:16 ]
Responder citando    Descargar mensaje  
Mensaje Re: [C] Funciones CallBack 
 
voutt

ya se que existian las funciones CallBack, no he descubierto la America!!!

pero...haber podido implementarlas tanto desde C como desde gambas ha sido para mi muy satisfactorio

 



 
tercoIDE - Ver perfil del usuario Enviar mensaje privado  
tercoIDE [ Domingo, 30 Noviembre 2014, 22:21 ]
Mostrar mensajes anteriores:    
 
Publicar nuevo tema  Responder al tema  Página 1 de 1
 
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 2 invitados
Usuarios registrados conectados: Ninguno


 



 

cron