¿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. Sin bloqueo pthread_join
- 5. getch sin bloqueo(), ncurses
- 6. Javascript sin bloqueo
- 7. zócalo Java sin bloqueo
- 8. ¿Colección concurrente 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. ¿Probar un bloqueo sin adquirirlo?
- 13. Rieles: ¿solicitudes HTTP sin bloqueo?
- 14. Descarga de javascript sin bloqueo
- 15. Construcciones sin bloqueo en .net
- 16. Programación multiprocesador: pilas sin bloqueo
- 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. Lectores múltiples sin bloqueo único escritor
- 29. SwapBuffers sin bloqueo() con VSync = en
- 30. ¿Hay una implementación de vector sin 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? –