udp socket 如何使用Socket.SetSocketOption 方法

mosada 2010-11-11 10:50:22
如何讓UDP 接收一對多資料?
s = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);

s.SetSocketOption(SocketOptionLevel.Udp, SocketOptionName.ReceiveBuffer,1000);

其中Socket.SetSocketOption (SocketOptionLevel, SocketOptionName, Byte[])
第二個參數值要使用什麼參數才可以接收一對多資訊
將指定的 Socket 選項設定為指定值,表示為位元組陣列。
受 .NET Compact Framework 支援。
那是啥丫?


如何分辨這些訊息的來源

可以用Thread控制一次可以接收20台client資料?

或者有沒有範例相關C#類別可以做到機制
...全文
1013 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
mosada 2010-11-11
  • 打赏
  • 举报
回复
單寫這行程式碼 出現10022:提供不正確引數
我發現他也有跟我相同問題
http://social.msdn.microsoft.com/forums/zh-tw/232/thread/85F76962-FF69-4B85-9558-886CB08242AC
但是他是使用一對多傳送方式
不知道我的例子適用BILL的方法
云瑀 2010-11-11
  • 打赏
  • 举报
回复
SetSocketOption(SocketOptionLevel.Udp,SocketOptionName.ReuseAddress, true);
这个?
mosada 2010-11-11
  • 打赏
  • 举报
回复
UP. .....................................................
mosada 2010-11-11
  • 打赏
  • 举报
回复
補充第一個問題
Socket 選項,決定目前 Socket 的行為。在具有 Boolean 資料類型的選項上,指定一個非零值可以啟用選項,零值可以停用選項。而在具有整數資料類型的選項上,則指定適當的值。Socket 選項會依據通訊協定支援的層級來予以分組。

以下所列是可以使用這個多載加以設定的各種 Socket 選項。這些選項是由適當的 SocketOptionLevel 所分組。如果您打算設定任何這些選項,請務必要對 optionLevel 參數使用適當的 SocketOptionLevel。選擇要設定的選項必須在 optionName 參數中加以指定。如果您想要取得所列出任何選項的現行值,請使用 GetSocketOption 方法。

可以使用這個多載加以設定的 SocketOptionLevel.Socket 選項。

*

Broadcast
*

DontLinger
*

Debug
*

Error
*

KeepAlive
*

OutOfBandInline
*

ReceiveBuffer
*

ReceiveTimeout
*

ReuseAddress
*

SendBuffer
*

SendTimeout
*

Type

可以使用這個多載加以設定的 SocketOptionLevel.IP 選項。

*

HeaderIncluded
*

IPOptions
*

IpTimeToLive
*

MulticastInterface
*

MulticastLoopback
*

MulticastTimeToLive
*

TypeOfService
*

UseLoopback

可以使用這個多載加以設定的 SocketOptionLevel.Tcp 選項。

*

BsdUrgent
*

Expedited
*

NoDelay

可以使用這個多載加以設定的 SocketOptionLevel.Udp 選項。

*

ChecksumCoverage
*

NoChecksum

可以使用這個多載加以設定的 SocketOptionLevel.IPv6 選項。

*

HopLimit

如需這些選項的詳細資訊,請參閱 SocketOptionName 列舉型別。
mosada 2010-11-11
  • 打赏
  • 举报
回复
第一個問題解決了 SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReceiveBuffer, 1000);
原因:SocketOptionName.ReceiveBuffer 是Socket Level而不是Udp Level的參數

第二個問題 接收機制:
不知道各位高手可以提供方法讓小妹
我初步是想到Thread去控制接收不過這樣又回到一個一個接收模式

内容概要:本文档详细介绍了光伏储能单相逆变器并网的Simulink仿真模型,重点聚焦于逆变器在并网过程中的动态行为分析与先进控制策略的设计与实现。该模型涵盖主电路结构、PWM调制技术、锁相环(PLL)同步控制、电流环调节等核心环节,并基于Matulink平台完成系统建模与仿真验证,能够有效研究并网电能质量、系统稳定性及控制算法性能。特别地,模型支持在弱电网条件下进行仿真,适用于分析谐波、电压不平衡、电压波动等电能质量问题,同时结合“阻抗建模”与“扫频法”等技术手段,深入探讨并网系统的交互稳定性与振荡机理,具有较强的理论深度与工程应用价值。; 适合人群:具备电力电子、自动控制理论或新能源发电系统基础知识的研究生、科研人员,以及从事光伏逆变器开发、微电网控制与并网稳定性研究的工程技术人员。; 使用场景及目标:①用于高校及科研机构开展光伏并网逆变器控制策略的教学演示与学术研究;②辅助企业工程师进行并网性能测试、控制器参数优化与系统稳定性评估;③支撑VSG控制、构网型变流器、阻抗建模、宽频振荡分析等相关前沿课题的仿真验证与论文复现工作。; 阅读建议:建议在MATLAB/Simulink环境中动手搭建并调试模型,逐步理解各模块功能与参数影响,重点关注控制器设计与系统动态响应之间的关系,并结合文中提及的“正负序阻抗建模”“扫频辨识”等方法深化对并网稳定性的理论认识与实践能力。
内容概要:本文针对“计及用户需求响应贡献度的综合能源系统多时间尺度优化”问题,提出了一种基于Matlab代码实现的精细化优化模型。该模型深度融合电、热、气等多种能源形式的耦合特性,构建了涵盖日前、日内及实时等多个时间尺度的协调优化调度框架。研究重点在于量化用户在不同场景下的需求响应行为及其对系统运行的贡献度,并将其纳入优化目标,从而提升综合能源系统的运行经济性、稳定性和灵活性。文中系统阐述了模型的数学建模过程,包括以综合运行成本最小化为核心的目标函数、涵盖能量平衡、设备运行约束及用户响应能力的多重约束条件,并详细说明了基于Matlab的求解算法与代码实现流程,为相关研究提供了可复现的技术路径。; 适合人群:具备电力系统分析、优化理论基础及Matlab编程能力的研究生、科研人员和工程技术人员,特别适用于从事综合能源系统规划、需求响应机制设计、微电网优化运行等领域研究的专业人士。; 使用场景及目标:①研究多能互补背景下综合能源系统的协同优化调度策略;②量化分析用户需求响应对系统削峰填谷、降低运行成本及提升可再生能源消纳能力的具体贡献;③实现多时间尺度优化模型的设计、仿真与性能验证;④作为高水平学术论文复现、科研课题攻关或实际能源项目规划的技术支撑。; 阅读建议:建议读者结合Matlab代码逐模块深入理解,重点关注目标函数中用户贡献度的建模方法、多时间尺度耦合机制的实现逻辑以及优化求解器的配置与调用。在学习过程中,可尝试调整用户响应参数、引入新的能源设备模型或改变网络拓扑结构进行拓展性实验,以全面掌握综合能源系统优化的核心机理与应用技巧。

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧