sta / websocket-sharp

A C# implementation of the WebSocket protocol client and server
http://sta.github.io/websocket-sharp
MIT License
5.75k stars 1.66k forks source link

.NET Core 2.0 #412

Open wsnell opened 7 years ago

wsnell commented 7 years ago

I've used this project for both client and server based websockets on .NET 4.5 for the desktop and it worked great. But now I would love to see this work for .NET Core 2.0 so I can also run this on Linux systems. Does this work? I see some comments that someone did some changes but this is still unknown. If not can you please add support? Thx

wsnell commented 6 years ago

Any comment on this? It should be a simple project change. Looks like someone already did it but you need to merge in their changes. Help please do...

andrelevi commented 6 years ago
VladimirAkopyan commented 6 years ago

so would I damn it

jotosmurf commented 6 years ago

While browsing through the nuget library, I found two spin offs that work on a .NET standard. I did not try them however as it would be better to have it officially supported :-).

jefflomax commented 6 years ago

I recompiled the source on .NET Core 2.1.300-preview1-008174 and it seems fine. Haven't put it thru it's paces yet.

wsnell commented 6 years ago

Are you telling me that the finally got WebSockets implemented and working on Windows 7 in the .NET Core 2.1 release? Thanks -Wes

From: Jeff Lomax [mailto:notifications@github.com] Sent: Sunday, April 29, 2018 5:05 PM To: sta/websocket-sharp websocket-sharp@noreply.github.com Cc: Wesley Snell wsnell@qti.qualcomm.com; Author author@noreply.github.com Subject: Re: [sta/websocket-sharp] .NET Core 2.0 (#412)

I recompiled the source on .NET Core 2.1.300-preview1-008174 and it seems fine. Haven't put it thru it's paces yet.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/sta/websocket-sharp/issues/412#issuecomment-385292377, or mute the threadhttps://github.com/notifications/unsubscribe-auth/Af6_IiwUMK75urXlmkU9wWTrmZT7Lytnks5ttlU1gaJpZM4QVwKo.

mchandschuh commented 5 years ago

For those interested, I've successfully used this project in netcore2.0 apps with occasional errors due to usage of asynchronous invocation of delegates/event handlers. Pull the code and do a search for BeginInvoke and replace these instances with another form of asynchronous delegate invocation. Something as simple as Task.Run(() => _message(e)) does the trick. Other options are directly dumping into the thread pool using ThreadPool.QueueUserWorkItem or if you don't care about CAS (code access security), then you can use ThreadPool.UnsafeQueueUserWorkItem.

jusoGames commented 5 years ago

@mchandschuh Could you explain more about this? for example: if (_callback != null) _callback.BeginInvoke (this, ar => _callback.EndInvoke (ar), null); what would be the change that you mention thanks