![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|
|
#1
|
||||
|
||||
|
Los componentes trabajan con Threads, no creo que se le pueda dar la orden de destrucción y marchando que es gerundio, habrá que esperar la respuesta por parte de ese Thread.
No hay que esperar a que termine la canción, hay que esperar a que el Thread se entere que se ha procesado el Stop de la canción .Yo tampoco he mirado a fondo los fuentes, solo he visto 3 archivos .pas de los 45 que trae, y suman 288 kb de código fuente. Para ser unos componentes gratuitos, con codigo fuente, que permite que los modifiques y los uses en aplicaciones gratuitas como comerciales... No creo que se le pueda criticar nada. Saludos |
|
#2
|
|||
|
|||
|
Cita:
Es decir cuando hacemos: ObjetoQueSea.Free; Se ejecuta el codigo del destructor del ObjetoQueSEa y esa linea de codigo no debe acabar hasta que realmente el objeto este destruido, y ahi dentro es donde el propio objeto debe hacer lo que sea, destruir threads y esperara, etc, y no salir nunca hasta que tenga una destruccion real y "limpia" del objeto y de todos los recursos y memoria que utilice. Si las librerias que utilizamos tienen bugs o fallos de diseño de ese tipo, es cuando nuestros programas pueden empezar a realizar cosas raras y aparentemente inexplicables. Hay que tener en cuenta que en cualquier programa de alto nivel un gran porcentaje del codigo no es nuestro , sino codigo de librerias externas y ya es bastante complejo arreglar los bugs propios como para aun por encima tener que romperse las cabeza con los bugs del codigo de terceras personas. Cita:
Independientemente de eso, ten en cuenta que lo que dije fue de una forma general refiriendome a cualquier tipo de software que tuviese ese defecto, si lees con mas detenimiento el post, he dado mas opciones no solo la posibilidad de que esa libreria tuviese, a mi juicio, algun tipo de bug o diseño erroneo. Saludos |
|
#3
|
|||
|
|||
|
Sólo por comentar
poniendo TAudio.Input:= nil falla. No le he visto mucha solución y no me queda más remedio q utilizar el componente por falta de tiempo. Poco a poco iré indagando en él para ver si consigo arreglar el problema...por ahora lo q he hecho es meterle un contador de tiempo y si no se libera en ese tiempo, entonces, doy como error al sonido y no lo vuelvo a utilizar durante toda la aplicación... venga, gracias por la ayuda ![]() |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|