![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Bueno gracias ante todo, deja explicarme mejor , los archivos .zip lo que contienen son tablas dbf , estos son subidos mediante ftp a un servidor donde corre el servicio , los .zip siempre tienen el mismo nombre , la aplicación que accede al ftp lo primero que hace es borrar el archivo .zip (si existe claro está) luego comienza a copiar el nuevo .zip con el mismo nombre+"temp" , cuando termina de subirlo lo renombra quitandole el "temp" pq el servicio realize la acción de descompactar y luego ejecutar un stored procedure a un MS SQL SESERVER que utiliza las tablas dbf importandlas y haciendo una serie de reportes a partir de las mismas .
Hasta ahora ha trabajado bn , ahora me he dado cuenta que cuando coinciden la entrada de 2 .zip se cuelga , he estado pensando si se deben usar hilos para que pueda realizar las tareas sobre 2 o más archivos .zip que lleguen al mismo tiempo . bueno si no me explcado mejor disculpa, que opinas deba de hacer??? saludos |
|
#2
|
|||
|
|||
|
Bueno no creo que se solucione con hilos, el problema está un poco en la lógica, ya que si llegan dos archivos casi seguidos, entonces al entrar el segundo, el primer archivo será borrado sin saber si ya ha sido descomprimido, además si entran dos al mismo tiempo entonces uno sobreescribe al otro (si es que esta habilitado lo de sobreescribir), y supongo que tienes alguna funcion o algo que verifica en el ftp si hay algun archivo, entonces, supongamos que está en dicho proceso y justo hay otro proceso que ha borrado el archivo anterior que de seguro lo está utilizando creo que te generaría error, quisiera que pusieras tu código para poder ayudarte
Yo tengo uno similiar al tuyo por lo que te recomiendo que manejes archivos con diferentes nombres, para que no se sobreescriban, yo por eso a los archivos les agrego la fecha y hora (con segundos) y un numero correlativo al nombre del archivo y no tengo problemas Pon una parte de tu codigo o si puedes todo para chequearlo PD: estoy suponiendo que la libreria para descomprimir que usas está ok saludos.
__________________
"La información tiene más valor cuando se comparte" |
|
#3
|
||||
|
||||
|
bueno los archivos tienen el mismo nombre pero se ubican en carpetas diferentes de ahí que su path no es el mismo , me entiendes???
bueno aquí va el código:
ese es el código del servicio ver si puedes pillar mejor la idea. Saludos ![]() |
|
#4
|
|||
|
|||
|
ok lo voy a chequear para poder ayudarte
__________________
"La información tiene más valor cuando se comparte" |
|
#5
|
|||
|
|||
|
Hola, veo que has utilizado varios componentes externos, no me he analizado todo, pero no he encontrado nada raro hasta donde he visto, sólo hay una cosa que creo que puede ser la causa del problema, porqué no usas semaforos o mutex o criticalsection para acceder a los recursos criticos, ya que como mencionas pueden entrar dos zips a la vez, y ese puede ser el problema.
Espero estar en lo correcto ![]() saludos
__________________
"La información tiene más valor cuando se comparte" |
|
#6
|
||||
|
||||
|
Bueno, nunca he usado lo que me sugieresalguna idea??, efectivamente pueden entrar al mismo tiempo 2 o más archivos .zip .
Saludos ![]() |
|
#7
|
|||
|
|||
|
Cita:
Por ejemplo: el SCritical: TCriticalSection lo declare en una librería general
En este ejemplo evito que dos clientes o dos procesos intenten acceder al archivo "filtro.conf", porque si existen dos o más procesos que deseen acceder los pone en espera, como en una cola Y al final lo libero para que pueda entrar otro proceso, de lo contrario si no se libera se cuelga espero te sirva de algo Saludos cordiales. ![]()
__________________
"La información tiene más valor cuando se comparte" |
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Web Service | CARSOFT_AR | Internet | 1 | 05-03-2007 08:03:02 |
| Web Service | madmai | Internet | 3 | 06-12-2006 21:01:45 |
| Web Service | CARSOFT_AR | Internet | 4 | 31-08-2006 17:34:05 |
| !!!!Service application | aram2r | API de Windows | 1 | 20-05-2004 13:09:06 |
| Service y Application Service | Ezecool | Varios | 0 | 30-09-2003 18:48:30 |
|