A menudo me encuentro iniciando un proceso de larga ejecución desde el REPL y luego me gustaría poder seguir utilizando el REPL para otras tareas mientras se estaba ejecutando. ¿Puedo usar limo para hacer de fondo el hilo actual o iniciar un nuevo hilo de control REPL? También sería correcto iniciar un búfer REPL adicional.¿Puedo fondo un hilo en funcionamiento en el Slime (Swank Emacs)
Respuesta
Editar:
Hm, de alguna manera logré perder la etiqueta Clojure en su pregunta. Me sorprendería mucho si la siguiente solución funcionara para Clojure, ya que, como probablemente sabrá, la comunidad Clojure desafortunadamente (al menos para aquellos de nosotros que usamos Clojure y CL) mantiene su propia versión de Slime. No eliminaré la respuesta, porque podría ser útil para los programadores de CL que buscan esta funcionalidad.
A menos que haya una solución similar para Clojure, lo que permite múltiples REPLs multiplexados en un solo zócalo, podría tal vez sólo inicia un segundo servidor Swank con la mano (desde el buffer *inferior-lisp*
) y conectarse a él a través de slime-connect
como una solución. (No se puede probar esta ATM, desde que se dejó de usar limo con Clojure hace un tiempo.)
¿Usted intentó el contrib slime-mrepl
? No he utilizado realmente yo mismo, pero una prueba rápida trabajado para mí bajo CCL/Win/Emacs 24.
he comprobado como esto: M-x slime
, introduzca (sleep 10)
en el REPL, búfer alternativo, M-x slime-new-mrepl
.
Por favor, perdónenme por una respuesta algo trillada y no limosa; en la parte superior funcionará con cualquier clojure REPL.
Cuando sé de antemano que estoy comenzando una tarea de larga ejecución desde el REPL, entonces comienzo el cálculo usando future
y compruebo con future-done?
antes de desencajarlo.
esto podría no responde a su pregunta, pero podría ser útil para darse cuenta de que mientras (slime-communication-style)
es :spawn
, las evaluaciones hechas usando C-x C-e
siempre generar su propio hilo y se puede ejecutar en paralelo a lo que está sucediendo en el hilo REPL. La salida (desde println
etc.) aparecerá en el búfer REPL.
- 1. Clojure emacs slime + swank directory question
- 2. ¿Cómo puedo evaluar un búfer y/o una instrucción dentro de Emacs con Swank y SLIME?
- 3. Ir a la definición de función en Emacs + Slime/leiningen-Swank + Clojure
- 4. Configuración de SLIME en emacs
- 5. Emacs con Slime y Swank para proyectos que no son de Leiningen
- 6. ^M El carácter se muestra en clojure slime-repl
- 7. ¿Cómo puedo crear controles WPF en un hilo de fondo?
- 8. Incrustar swank-clojure en el programa java
- 9. Primeros pasos con SLIME y SWANK: conexión Lisp cerrada inesperadamente: conexión interrumpida por un par remoto
- 10. ¿Por qué swank-js me da "el documento no está definido" en emacs REPL?
- 11. Cómo salir elegantemente de SLIME y Emacs?
- 12. WPF DrawingVisual en un hilo de fondo?
- 13. No puedo enviar caracteres divertidos a SLIME
- 14. Dibujando un hilo de fondo en iOS
- 15. Buscando en un hilo de fondo
- 16. Decodifica imágenes en el hilo de fondo?
- 17. Ajuste limo-enable-evaluar-en-emacs
- 18. ¿Cómo habilitar paréntesis de arcoíris en SLIME?
- 19. Ejecutar un bloque anónimo en un hilo de fondo específico
- 20. Cargando una imagen en un hilo de fondo en WPF
- 21. Django: iniciar un proceso en un hilo de fondo?
- 22. ¿Puedo ejecutar un hilo dentro de un hilo en java?
- 23. cómo matar el hilo php de fondo?
- 24. Por favor, recomiende un buen tutorial Slime o screencast
- 25. Encuadernación de actualización WPF en un hilo de fondo
- 26. ¿Cómo puedo detener una operación en ejecución en SLIME REPL?
- 27. Aprende Emacs/Slime de la manera difícil (a partir de 10 años de Vim)
- 28. .net Observable 'ObserveOn' un hilo de fondo
- 29. ¿Puedo omitir el funcionamiento de @synthesize en Objective C?
- 30. clojure swank server abre el puerto público?
sigue siendo útil, incluso si no es directamente la respuesta a esta quietud, gracias –