• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

C# Sockets.RubyBasicSocket类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C#中IronRuby.StandardLibrary.Sockets.RubyBasicSocket的典型用法代码示例。如果您正苦于以下问题:C# RubyBasicSocket类的具体用法?C# RubyBasicSocket怎么用?C# RubyBasicSocket使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



RubyBasicSocket类属于IronRuby.StandardLibrary.Sockets命名空间,在下文中一共展示了RubyBasicSocket类的19个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。

示例1: Send

        public static int Send(ConversionStorage<int>/*!*/ fixnumCast, ConversionStorage<MutableString>/*!*/ stringCast,
            RubyContext/*!*/ context, RubyBasicSocket/*!*/ self, [DefaultProtocol, NotNull]MutableString/*!*/ message,
            object flags, object hostNameOrAddress, object port) {
            
            Protocols.CheckSafeLevel(context, 4, "send");
            int iPort = ConvertToPortNum(stringCast, fixnumCast, context, port);
            SocketFlags sFlags = ConvertToSocketFlag(fixnumCast, context, flags);

            // Convert the parameters
            IPAddress address = (hostNameOrAddress != null) ?
                GetHostAddress(ConvertToHostString(stringCast, context, hostNameOrAddress)) : IPAddress.Loopback;

            EndPoint toEndPoint = new IPEndPoint(address, iPort);
            return self.Socket.SendTo(message.ConvertToBytes(), sFlags, toEndPoint);
        }
开发者ID:tnachen,项目名称:ironruby,代码行数:15,代码来源:UDPSocket.cs


示例2: SetDoNotReverseLookup

 public static void SetDoNotReverseLookup(RubyBasicSocket/*!*/ self, bool value) {
     Protocols.CheckSafeLevel(self.Context, 4);
     self._doNotReverseLookup = value;
 }
开发者ID:jschementi,项目名称:iron,代码行数:4,代码来源:BasicSocket.cs


示例3: Send

 public static int Send(ConversionStorage<int>/*!*/ fixnumCast, 
     RubyBasicSocket/*!*/ self, [DefaultProtocol, NotNull]MutableString/*!*/ message, object flags) {
     Protocols.CheckSafeLevel(fixnumCast.Context, 4, "send");
     SocketFlags socketFlags = ConvertToSocketFlag(fixnumCast, flags);
     return self.Socket.Send(message.ConvertToBytes(), socketFlags);
 }
开发者ID:ExpertsInside,项目名称:IronSP,代码行数:6,代码来源:BasicSocket.cs


示例4: Receive

        public static MutableString Receive(ConversionStorage<int>/*!*/ fixnumCast, RubyBasicSocket/*!*/ self, 
            [DefaultProtocol]int length, [DefaultParameterValue(null)]object flags) {

            SocketFlags sFlags = ConvertToSocketFlag(fixnumCast, flags);

            byte[] buffer = new byte[length];
            int received = self.Socket.Receive(buffer, 0, length, sFlags);

            MutableString str = MutableString.CreateBinary(received);
            str.Append(buffer, 0, received);
            str.IsTainted = true;
            return str;
        }
开发者ID:ExpertsInside,项目名称:IronSP,代码行数:13,代码来源:BasicSocket.cs


示例5: SetSocketOption

        public static void SetSocketOption(ConversionStorage<int>/*!*/ conversionStorage, RubyContext/*!*/ context, 
            RubyBasicSocket/*!*/ self, [DefaultProtocol]int level, [DefaultProtocol]int optname, bool value) {

            Protocols.CheckSafeLevel(context, 2, "setsockopt");
            self.Socket.SetSocketOption((SocketOptionLevel)level, (SocketOptionName)optname, value);
        }
开发者ID:ExpertsInside,项目名称:IronSP,代码行数:6,代码来源:BasicSocket.cs


示例6: GetSocketOption

 public static MutableString GetSocketOption(ConversionStorage<int>/*!*/ conversionStorage, RubyContext/*!*/ context, 
     RubyBasicSocket/*!*/ self, [DefaultProtocol]int level, [DefaultProtocol]int optname) {
     Protocols.CheckSafeLevel(context, 2, "getsockopt");
     byte[] value = self.Socket.GetSocketOption((SocketOptionLevel)level, (SocketOptionName)optname, 4);
     return MutableString.CreateBinary(value);
 }
开发者ID:ExpertsInside,项目名称:IronSP,代码行数:6,代码来源:BasicSocket.cs


示例7: GetSocketOption

 public static MutableString GetSocketOption(RubyContext/*!*/ context, RubyBasicSocket/*!*/ self, object/*Numeric*/ level, object/*Numeric*/ optname) {
     Protocols.CheckSafeLevel(context, 2, "getsockopt");
     int iLevel = Protocols.CastToFixnum(context, Protocols.ConvertToInteger(context, level));
     int iOptname = Protocols.CastToFixnum(context, Protocols.ConvertToInteger(context, optname));
     byte[] value = self.Socket.GetSocketOption((SocketOptionLevel)iLevel, (SocketOptionName)iOptname, 4);
     return MutableString.CreateBinary(value);
 }
开发者ID:mscottford,项目名称:ironruby,代码行数:7,代码来源:BasicSocket.cs


示例8: Send

 public static int Send(RubyContext/*!*/ context, RubyBasicSocket/*!*/ self, object message, object flags) {
     Protocols.CheckSafeLevel(context, 4, "send");
     SocketFlags socketFlags = ConvertToSocketFlag(context, flags);
     MutableString strMessage = Protocols.CastToString(context, message);
     return self.Socket.Send(strMessage.ConvertToBytes(), socketFlags);
 }
开发者ID:mscottford,项目名称:ironruby,代码行数:6,代码来源:BasicSocket.cs


示例9: SetSocketOption

 public static void SetSocketOption(RubyContext/*!*/ context, RubyBasicSocket/*!*/ self, object/*Numeric*/ level, object/*Numeric*/ optname, bool value) {
     Protocols.CheckSafeLevel(context, 2, "setsockopt");
     int iLevel = Protocols.CastToFixnum(context, level);
     int iOptname = Protocols.CastToFixnum(context, optname);
     self.Socket.SetSocketOption((SocketOptionLevel)iLevel, (SocketOptionName)iOptname, value);
 }
开发者ID:mscottford,项目名称:ironruby,代码行数:6,代码来源:BasicSocket.cs


示例10: Shutdown

 public static int Shutdown(RubyContext/*!*/ context, RubyBasicSocket/*!*/ self, object/*Numeric*/ how) {
     int iHow = 2;
     if (how != null) {
         iHow = Protocols.CastToFixnum(context, how);
     }
     return Shutdown(context, self, iHow);
 }
开发者ID:mscottford,项目名称:ironruby,代码行数:7,代码来源:BasicSocket.cs


示例11: Shutdown

 public static int Shutdown(RubyContext/*!*/ context, RubyBasicSocket/*!*/ self, [DefaultProtocol, DefaultParameterValue(2)]int how) {
     CheckSecurity(context, self, "can't shutdown socket");
     if (how < 0 || 2 < how) {
         throw RubyExceptions.CreateArgumentError("`how' should be either 0, 1, 2");
     }
     // TODO: 
     // Webrick's (ruby\1.9.1\webrick\server.rb) use of shutdown on socket leads to subsequent scoket failures. Do close instead.
     // self.Socket.Shutdown((SocketShutdown)how);
     self.Socket.Close();
     return 0;
 }
开发者ID:jschementi,项目名称:iron,代码行数:11,代码来源:BasicSocket.cs


示例12: CloseWrite

 public static void CloseWrite(RubyContext/*!*/ context, RubyBasicSocket/*!*/ self) {
     CheckSecurity(context, self, "can't close socket");
     // TODO: It would be nice to alter the SocketStream to be ReadOnly here
     self.Socket.Shutdown(SocketShutdown.Send);
 }
开发者ID:ExpertsInside,项目名称:IronSP,代码行数:5,代码来源:BasicSocket.cs


示例13: Shutdown

 public static int Shutdown(RubyContext/*!*/ context, RubyBasicSocket/*!*/ self, [DefaultProtocol, DefaultParameterValue(2)]int how) {
     CheckSecurity(context, self, "can't shutdown socket");
     if (how < 0 || 2 < how) {
         throw RubyExceptions.CreateArgumentError("`how' should be either 0, 1, 2");
     }
     self.Socket.Shutdown((SocketShutdown)how);
     return 0;
 }
开发者ID:ExpertsInside,项目名称:IronSP,代码行数:8,代码来源:BasicSocket.cs


示例14: Receive

        public static MutableString Receive(RubyContext/*!*/ context, RubyBasicSocket/*!*/ self, 
            [DefaultProtocol]int length, [DefaultParameterValue(null)]object flags) {

            SocketFlags sFlags = ConvertToSocketFlag(context, flags);

            byte[] buffer = new byte[length];
            int received = self.Socket.Receive(buffer, 0, length, sFlags);

            MutableString str = MutableString.CreateBinary(received);
            str.Append(buffer, 0, received);
            context.SetObjectTaint(str, true);
            return str;
        }
开发者ID:mscottford,项目名称:ironruby,代码行数:13,代码来源:BasicSocket.cs


示例15: Send

 public static new int Send(RubyContext/*!*/ context, RubyBasicSocket/*!*/ self, object message, object flags, object to) {
     return RubyBasicSocket.Send(context, self, message, flags, to);
 }
开发者ID:mscottford,项目名称:ironruby,代码行数:3,代码来源:UDPSocket.cs


示例16: GetPeerName

 public static MutableString GetPeerName(RubyBasicSocket/*!*/ self) {
     SocketAddress addr = self.Socket.RemoteEndPoint.Serialize();
     byte[] bytes = new byte[addr.Size];
     for (int i = 0; i < addr.Size; ++i) {
         bytes[i] = addr[i];
     }
     return MutableString.CreateBinary(bytes);
 }
开发者ID:ExpertsInside,项目名称:IronSP,代码行数:8,代码来源:BasicSocket.cs


示例17: Send

        public static int Send(ConversionStorage<int>/*!*/ fixnumCast, ConversionStorage<MutableString>/*!*/ stringCast,
            RubyContext/*!*/ context, RubyBasicSocket/*!*/ self, [DefaultProtocol, NotNull]MutableString/*!*/ message, 
            object flags, object hostname, object port) {
            
            Protocols.CheckSafeLevel(context, 4, "send");
            int iPort = ConvertToPortNum(stringCast, fixnumCast, context, port);
            SocketFlags sFlags = ConvertToSocketFlag(fixnumCast, context, flags);

            // Convert the parameters
            MutableString address = GetAddressInternal(context, hostname);
            EndPoint toEndPoint = new IPEndPoint(IPAddress.Parse(address.ConvertToString()), iPort);
            return self.Socket.SendTo(message.ConvertToBytes(), sFlags, toEndPoint);
        }
开发者ID:joshholmes,项目名称:ironruby,代码行数:13,代码来源:UDPSocket.cs


示例18: ReceiveNonBlocking

        public static MutableString/*!*/ ReceiveNonBlocking(ConversionStorage<int>/*!*/ fixnumCast, RubyBasicSocket/*!*/ self,
            [DefaultProtocol]int length, [DefaultParameterValue(null)]object flags) {

            bool blocking = self.Socket.Blocking;
            try {
                self.Socket.Blocking = false;
                return Receive(fixnumCast, self, length, flags);
            } finally {
                // Reset the blocking
                self.Socket.Blocking = blocking;
            }
        }
开发者ID:ExpertsInside,项目名称:IronSP,代码行数:12,代码来源:BasicSocket.cs


示例19: GetDoNotReverseLookup

 public static bool GetDoNotReverseLookup(RubyBasicSocket/*!*/ self) {
     return self._doNotReverseLookup;
 }
开发者ID:jschementi,项目名称:iron,代码行数:3,代码来源:BasicSocket.cs



注:本文中的IronRuby.StandardLibrary.Sockets.RubyBasicSocket类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C# StringIO.StringIO类代码示例发布时间:2022-05-26
下一篇:
C# Calls.RubyMemberInfo类代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap