[{"@context":"https:\/\/schema.org\/","@type":"BlogPosting","@id":"https:\/\/blog.terabox.com\/insights\/guia-lincheck-algoritmos-concurrentes-jvm#BlogPosting","mainEntityOfPage":"https:\/\/blog.terabox.com\/insights\/guia-lincheck-algoritmos-concurrentes-jvm","headline":"LinCheck: Gu\u00eda para Probar Algoritmos Concurrentes en JVM","name":"LinCheck: Gu\u00eda para Probar Algoritmos Concurrentes en JVM","description":"\ud83d\udcfa V\u00eddeo de estudio recomendado hoy: https:\/\/www.youtube.com\/watch?v=jZqkWfa11Js Adi\u00f3s a las condiciones de carrera: C\u00f3mo LinCheck revoluciona las pruebas de concurrenciaEl mito de la IA y el c\u00f3digo concurrenteLinealizabilidad: El juez de la correcci\u00f3nBajo el cap\u00f3: Transformaci\u00f3n de BytecodeConclusiones clavePreguntas y... ","datePublished":"2026-08-20","dateModified":"2026-08-20","author":{"@type":"Person","@id":"https:\/\/blog.terabox.com\/author\/flextech-admin\/#Person","name":"flextech-admin","url":"https:\/\/blog.terabox.com\/author\/flextech-admin\/","image":{"@type":"ImageObject","@id":"https:\/\/secure.gravatar.com\/avatar\/ad516503a11cd5ca435acc9bb6523536?s=150&#038;d=mm&#038;r=gforcedefault=1","url":"https:\/\/secure.gravatar.com\/avatar\/ad516503a11cd5ca435acc9bb6523536?s=150&#038;d=mm&#038;r=gforcedefault=1","height":96,"width":96}},"publisher":{"@type":"Organization","name":"terabox","logo":{"@type":"ImageObject","@id":"http:\/\/blog.terabox.com\/wp-content\/uploads\/2021\/11\/logo\u4ea7\u54c1\u540d-\u7ad6\u7248.png","url":"http:\/\/blog.terabox.com\/wp-content\/uploads\/2021\/11\/logo\u4ea7\u54c1\u540d-\u7ad6\u7248.png","width":900,"height":900}},"image":{"@type":"ImageObject","@id":"https:\/\/img.youtube.com\/vi\/jZqkWfa11Js\/maxresdefault.jpg","url":"https:\/\/img.youtube.com\/vi\/jZqkWfa11Js\/maxresdefault.jpg","height":"","width":""},"url":"https:\/\/blog.terabox.com\/insights\/guia-lincheck-algoritmos-concurrentes-jvm","video":{"@context":"http:\/\/schema.org\/","@type":"VideoObject","@id":"https:\/\/www.youtube.com\/watch?v=jZqkWfa11Js#VideoObject","contentUrl":"https:\/\/www.youtube.com\/watch?v=jZqkWfa11Js","name":"How we test concurrent algorithms in Kotlin Coroutines by Nikita Koval","description":"Recording brought to you by American Express. https:\/\/americanexpress.io\/kotlin-jobs \n\nWriting a good and robust concurrent test may be as challenging as implementing the algorithm, if not more so. In Kotlin Coroutines, we maintain a dozen non-trivial concurrent data structures, such as queues, semaphores, and channels. We need to test them properly. Straightforward stress tests likely do not catch all bugs and flack. Such testing quality is below the bar. We need a way to write concurrent tests in a handy, declarative way, keeping in mind \"what to test,\" not \"how.\"\n\nAt JetBrains, we've developed Lincheck, a unique framework that makes writing concurrent tests a piece of cake. Users just need to list all the data structure operations, and Lincheck verifies whether these operations are thread-safe or not. In this talk, I will share how we use Linchek in Kotlin Coroutines, how to apply it to your setting, and briefly cover the framework internals.\n\nTalk by: Nikita Koval\n\n#coroutines #KotlinConf","thumbnailUrl":["https:\/\/i.ytimg.com\/vi\/jZqkWfa11Js\/default.jpg","https:\/\/i.ytimg.com\/vi\/jZqkWfa11Js\/mqdefault.jpg","https:\/\/i.ytimg.com\/vi\/jZqkWfa11Js\/hqdefault.jpg","https:\/\/i.ytimg.com\/vi\/jZqkWfa11Js\/sddefault.jpg","https:\/\/i.ytimg.com\/vi\/jZqkWfa11Js\/maxresdefault.jpg"],"uploadDate":"2023-05-04T15:04:32+00:00","duration":"PT44M40S","embedUrl":"https:\/\/www.youtube.com\/embed\/jZqkWfa11Js","publisher":{"@type":"Organization","@id":"https:\/\/www.youtube.com\/channel\/UCP7uiEZIqci43m22KDl0sNw#Organization","url":"https:\/\/www.youtube.com\/channel\/UCP7uiEZIqci43m22KDl0sNw","name":"Kotlin by JetBrains","description":"Concise. Multiplatform. Fun.\n\nKotlin is a concise, cross-platform programming language developed by JetBrains.\n\nExpand your Kotlin skills with the official YouTube channel of the Kotlin programming language. \nKotlin Tutorials, Kotlin Multiplatform, Kotlin Coroutines, Kotlin Tips, Talking Kotlin Podcast.\n\nSubscribe for shows, the latest news, and live events!\n","logo":{"url":"https:\/\/yt3.ggpht.com\/TTzoNteRV1ZPudFs4BMuSsfgIW4qZm9z3k7qI9hXdeKPShb5e57823NQcJFL9kKfxesb0mkXEWA=s800-c-k-c0x00ffffff-no-rj","width":800,"height":800,"@type":"ImageObject","@id":"https:\/\/www.youtube.com\/watch?v=jZqkWfa11Js#VideoObject_publisher_logo_ImageObject"}},"potentialAction":{"@type":"SeekToAction","@id":"https:\/\/www.youtube.com\/watch?v=jZqkWfa11Js#VideoObject_potentialAction","target":"https:\/\/www.youtube.com\/watch?v=jZqkWfa11Js&t={seek_to_second_number}","startOffset-input":"required name=seek_to_second_number"},"interactionStatistic":[[{"@type":"InteractionCounter","@id":"https:\/\/www.youtube.com\/watch?v=jZqkWfa11Js#VideoObject_interactionStatistic_WatchAction","interactionType":{"@type":"WatchAction"},"userInteractionCount":1990}],{"@type":"InteractionCounter","@id":"https:\/\/www.youtube.com\/watch?v=jZqkWfa11Js#VideoObject_interactionStatistic_LikeAction","interactionType":{"@type":"LikeAction"},"userInteractionCount":48}]},"about":["Insights","\u300eSpanish\u300f"],"wordCount":1600},{"@context":"https:\/\/schema.org\/","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Insights","item":"https:\/\/blog.terabox.com\/insights\/#breadcrumbitem"},{"@type":"ListItem","position":2,"name":"LinCheck: Gu\u00eda para Probar Algoritmos Concurrentes en JVM","item":"https:\/\/blog.terabox.com\/insights\/guia-lincheck-algoritmos-concurrentes-jvm#breadcrumbitem"}]}]