¿Hay una API de lectura de archivo sin bloqueo en java? Si no, ¿sería prudente construir uno en C++ y llamarlo desde una aplicación java a través de JNI?Archivo sin bloqueo lee
Respuesta
No, FileChannel
no se extiende SelectableChannel
.
Probablemente porque no todos los sistemas operativos lo admiten.
Windows sí, y en teoría podría escribir una biblioteca de C++ específica de Windows y llamarla a través de JNI, pero es mucho trabajo integrar esto con java.nio
.
Preferiría que un hilo de trabajo copiara el contenido del archivo a pipe y realice lecturas sin bloqueos en el otro extremo del tubo.
Mi respuesta original es ahora mal, ya que la adición de AsynchronousFileChannel
en Java 7.
sigue sin poder select en un archivo, pero ahora hay dos métodos de lectura asíncrona de archivos: uno que toma un callback y another que devuelve un Future
.
Puede ser más limpio utilizar el método de devolución de llamada (y enviar un evento desde la devolución de llamada) que tener un hilo dedicado sondeando una tubería.
Asychronous no es lo mismo que no bloquear. De hecho, las operaciones de IO asíncronas [usan un grupo de hilos obligatorio] (https://docs.oracle.com/javase/7/docs/api/java/nio/channels/AsynchronousChannelGroup.html) donde obviamente no se bloquea IO obturador ' t. – RecursiveExceptionException
- 1. no lee bloqueo en nombre de tubería
- 2. Bloqueo sin bloqueo
- 3. ¿Lee un archivo al revés?
- 4. getch sin bloqueo(), ncurses
- 5. ¿Colección concurrente sin bloqueo?
- 6. Javascript sin bloqueo
- 7. Sin bloqueo pthread_join
- 8. zócalo Java sin bloqueo
- 9. ¿Cómo escribir en un archivo usando IO sin bloqueo?
- 10. ¿Lee el contenido de un objeto "archivo"?
- 11. Tubos con nombre sin bloqueo
- 12. Descarga de javascript sin bloqueo
- 13. Programación multiprocesador: pilas sin bloqueo
- 14. Rieles: ¿solicitudes HTTP sin bloqueo?
- 15. Construcciones sin bloqueo en .net
- 16. ¿Probar un bloqueo sin adquirirlo?
- 17. Lee un archivo binario en una matriz
- 18. GZipStream no lee todo el archivo
- 19. Archivo de bloqueo y eliminación
- 20. Diálogo modal de bloqueo sin bloqueo Swing progress
- 21. Cerraduras de bloqueo frente a cerraduras sin bloqueo
- 22. Archivos .bat, ejecución/ejecución sin bloqueo
- 23. Acceso a archivos sin bloqueo con Twisted
- 24. Obsesión con secuencias de comandos sin bloqueo
- 25. Archivo de bloqueo de PowerShell
- 26. ¿Cómo hago una lectura de IPC sin bloqueo en Windows?
- 27. La interrupción de subproceso no finaliza la llamada de bloqueo en la secuencia de entrada lee
- 28. Registro remoto asíncrono sin bloqueo en Java?
- 29. C++ plantilla de objeto sin bloqueo
- 30. Ejecutar MySQLDump sin tablas de bloqueo
¿Para qué te gustaría usarlo? – Elalfer
Archivo IO dentro de un MDB. – TheWolf
¿Qué hay de malo con el uso de un modelo de bloqueo? –