Estoy tratando de leer algunas imágenes (y luego tengo la intención de hacer algunas tareas sobre ellas), y mientras las imágenes se están leyendo en la memoria. Quiero mostrar una imagen animada '.gif'. Para ese propósito, tuve que usar Threads. Ahora se está dando error:python: Fatal IO error 11 (Recurso temporalmente no disponible) en el servidor X: 0.0
python: Fatal IO error 11 (Resource temporarily unavailable) on X server :0.0.
Y algunas veces da error:
python: Fatal IO error 0 (Success) on X server :0.0.
(Sí Mensaje de error cambia casi alternativamente) no tengo ni idea de por qué se produjo el error y cómo quitar eso.
import wx
from wx import animate
import thread
import os
class AniGif(wx.Dialog):
def __init__(self, parent, id, title):
wx.Dialog.__init__(self, parent, id, title, size=(300, 300))
buttonOk = wx.Button(self, id=3, label="Ok", pos=(75, 50), size=(50, 50))
self.Bind(wx.EVT_BUTTON, self.OnClick, id=3)
def OnClick(self, event) :
clock = "loading.gif"
showclock = wx.animate.GIFAnimationCtrl(self, -1, clock)
showclock.Play()
thread.start_new_thread(grabImages, ())
def grabImages():
global dirim
dirim = {}
path = './images/soccer/'
listing = os.listdir(path)
for infile in listing:
if len(infile)>4 and infile[-4:]=='.jpg' :
print path+infile
dirim[infile]=wx.Bitmap(path+infile)
app = wx.App()
dia = AniGif(None, -1, "Ani Gif")
dia.ShowModal()
dia.Destroy()
app.MainLoop()
si reemplazo esta línea
dirim[infile]=wx.Bitmap(path+infile)
con una línea ficticia:
dirim[infile]=infile
Es un trabajo muy bien, sin error.
Y si puedo reemplazar esta línea
thread.start_new_thread(grabImages, ())
con algo como:
grabImages()
Es un trabajo muy bien, sin error. El único problema que no puedo mostrar es el gif animado ...
He intentado eliminar ~/.gconf/desktop/gnome/peripherals como se menciona en el link dado por joaquin. No funciona ... y también probé 'xhost +'. Lo encontré de algún lado en la red. Todavía no hay éxito
Por favor, indique lo que está sucediendo en este código ... y sugiera una solución Estoy usando el sistema operativo Ubuntu 10.04. y el directorio permisos son:
drwxr-xr-x images
drwxr-xr-x soccer
detalle de
Python versión alemana son: Python 2.6.5 (R265: 79063 16 Abr 2010 13:09:56) [GCC 4.4.3] en linux2
Esto viene unos años más tarde, pero me gustaría añadir que tenía el mismo error (pero con PySide) y, para mí, que estaba relacionado con la [esta cuestión] (http : //stackoverflow.com/questions/8649233/threading-it-is-not-safe-to-use-pixmaps-outside-the-gui-thread). Así que, básicamente, no puede llamar a las funciones de dibujo fuera del hilo principal, y es por eso que funcionó cuando reemplazó Bitmap con otra cosa. – iled