ForNeVeR / ForNeVeR/AvaloniaRider

Try using `AsynchronousSocketChannel`

Open
#282 0 comments 1 reaction 0 assignees View on GitHub
kind:enhancement kind:refactoring
Dominant language
Kotlin
Stars
583
Forks
32
Avg merge
2h 23m
Merged PRs (30d)
1

Description

Currently, our socket code uses blocking read calls on a separate thread.

This could be migrated to `AsynchronousSocketChannel` that's `Future`-based, and that would allow to make the code better, use fewer resources (no thread stack), and also maybe even fix the issues like #84.

Contributor guide

Open the contributing guide

Research direction

Start by locating the socket code and its blocking reads on a separate thread. Compare that implementation with Java's AsynchronousSocketChannel and its Future-based API, then verify that the migration reduces thread-stack use and investigate whether it affects the issues described in #84.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, kotlin
Domain
networking
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.