¿Se pueden usar corotines Kotlin "experimentales" en la producción?

¿Pueden usarse las corotinas de Kotlin en producción, y qué significa su estado experimental?

Las corotinas de Kotlin pueden y deben usarse en producción. Esa fue la principal razón para lanzarlos oficialmente en Kotlin 1.1. Tras lanzarlos, el equipo de JetBrains se había comprometido a mantener la compatibilidad con versiones anteriores con respecto a los cambios que se les presentan en las versiones menores a medida que evolucionan, al time que permite a las personas probarlas de forma segura en aplicaciones de producción complejas.

En resumen, la diferencia entre las características "experimentales" y "normales" es que para las características normales de Kotlin no se pueden agregar cosas nuevas en actualizaciones menores, porque hay una garantía de "compatibilidad total", mientras que para las características experimentales se pueden agregar cosas nuevas, pero no se puede eliminar nada (debido a la garantía de compatibilidad con versiones anteriores).

Las corutinas experimentales usan un nombre de package de kotlin.coroutines.experimental separado, de modo que cuando se finaliza el layout de coroutines y se mueven al package kotlin.coroutines , el código comstackdo anterior no se romperá, pero continuará funcionando a través de una biblioteca de soporte separada.

Puede encontrar más información (lectura a largo ploop) sobre por qué son "experimentales" y qué significa esto en esta publicación del foro de Andrey Breslav.

La misma pregunta se aplica a las bibliotecas de soporte coroutines.

La versión actual de kotlinx.coroutines está diseñada para uso de producción. Está bastante bien cubierto con testings, muchas cosas ya están optimizadas, todos los cambios se hacen teniendo en count los problemas de compatibilidad con el código previamente comstackdo. Sin duda, sirve como banco de testings para varias cosas basadas en coroutine, por lo que hay algunas partes que están claramente marcadas como "trabajo en progreso" o "inestable" en la documentation de las funciones y classs correspondientes. Sin embargo, de forma pnetworkingeterminada, todas las API públicas en kotlinx.coroutines se consideran estables y se están desarrollando, si es necesario, con ayudas de migration adecuadas.

  • Kotlin actor a actor comunicación
  • Cómo volver a intentar el retroceso exponencial en corotines de kotlin
  • ¿Cuál es la forma correcta de usar las extensiones de Anko Coroutines?
  • reference no resuelta: lanzamiento
  • ¿Cómo puedo conectar un productor a un actor?
  • Corotines de Kotlin: ajuste el uso sincrónico de cassandra frente a la traducción del uso asynchronous
  • Kotlin Coroutines en un service de Android
  • No se puede detectar el lanzamiento de exception después de que se cancela Kotlin coroutine
  • ¿Por qué hay una diferencia entre los constructores de coroutine para CompletableFuture y ListenableFuture?
  • ¿Pueden `SendChannel.offer`,` CompletableDefernetworking.complete` y similares llamarse corutinas externas?
  • ¿Cómo se organizan múltiples corrutines y bloques de expectativas en una testing de Kotlin Spek?