org.jgroups.protocols.UDP.receive()方法的使用及代码示例

x33g5p2x  于2022-02-01 转载在 其他  
字(4.1k)|赞(0)|评价(0)|浏览(244)

本文整理了Java中org.jgroups.protocols.UDP.receive()方法的一些代码示例,展示了UDP.receive()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。UDP.receive()方法的具体详情如下:
包路径:org.jgroups.protocols.UDP
类名称:UDP
方法名:receive

UDP.receive介绍

暂无

代码示例

代码示例来源:origin: apache/geode

  1. @Override
  2. public void receive(Address sender, byte[] data, int offset, int length) {
  3. if (data == null || length <= 0) { // GEODE-1596 - check for empty messages
  4. return;
  5. }
  6. // drop message from self; it has already been looped back up
  7. // (https://issues.jboss.org/browse/JGRP-1765)
  8. if (local_physical_addr != null && local_physical_addr.equals(sender))
  9. return;
  10. if (length - offset == 4 && data[offset] == 'p' && data[offset + 1] == 'i'
  11. && data[offset + 2] == 'n' && data[offset + 3] == 'g') {
  12. // AvailablePort check
  13. data[offset + 1] = 'o';
  14. try {
  15. sendToSingleMember(sender, data, offset, length);
  16. } catch (Exception e) {
  17. log.fatal("Unable to respond to available-port check", e);
  18. }
  19. return;
  20. }
  21. super.receive(sender, data, offset, length);
  22. }

代码示例来源:origin: wildfly/wildfly

  1. public void run() {
  2. final byte receive_buf[]=new byte[66000]; // to be on the safe side (IPv6 == 65575 bytes, IPv4 = 65535)
  3. final DatagramPacket packet=new DatagramPacket(receive_buf, receive_buf.length);
  4. while(thread != null && Thread.currentThread().equals(thread)) {
  5. try {
  6. // solves Android ISSUE #24748 - DatagramPacket truncated UDP in ICS
  7. if(is_android)
  8. packet.setLength(receive_buf.length);
  9. receiver_socket.receive(packet);
  10. int len=packet.getLength();
  11. if(len > receive_buf.length && log.isErrorEnabled())
  12. log.error(Util.getMessage("SizeOfTheReceivedPacket"), len, receive_buf.length, receive_buf.length);
  13. receive(new IpAddress(packet.getAddress(), packet.getPort()),
  14. receive_buf, packet.getOffset(), len);
  15. }
  16. catch(SocketException sock_ex) {
  17. if(receiver_socket.isClosed()) {
  18. log.debug("receiver socket is closed, exception=" + sock_ex);
  19. break;
  20. }
  21. log.error(Util.getMessage("FailedReceivingPacket"), sock_ex);
  22. }
  23. catch(Throwable ex) {
  24. log.error(Util.getMessage("FailedReceivingPacket"), ex);
  25. }
  26. }
  27. if(log.isDebugEnabled()) log.debug(name + " thread terminated");
  28. }

代码示例来源:origin: org.apache.geode/gemfire-core

  1. @Override
  2. public void receive(Address sender, byte[] data, int offset, int length, boolean copy_buffer) {
  3. if(data == null) return;
  4. // drop message from self; it has already been looped back up (https://issues.jboss.org/browse/JGRP-1765)
  5. if(local_physical_addr != null && local_physical_addr.equals(sender))
  6. return;
  7. if (length-offset == 4
  8. && data[offset] == 'p'
  9. && data[offset+1] == 'i'
  10. && data[offset+2] == 'n'
  11. && data[offset+3] == 'g') {
  12. // AvailablePort check
  13. data[offset+1] = 'o';
  14. try {
  15. sendToSingleMember(sender, data, offset, length);
  16. } catch (Exception e) {
  17. log.fatal("Unable to respond to available-port check", e);
  18. }
  19. return;
  20. }
  21. super.receive(sender, data, offset, length, copy_buffer);
  22. }

代码示例来源:origin: org.jgroups/com.springsource.org.jgroups

  1. "Use the FRAG protocol and make its frag_size lower than " + receive_buf.length);
  2. receive(local_addr, sender, data, offset, len);

代码示例来源:origin: org.jgroups/com.springsource.org.jgroups

  1. receive(mcast_addr, sender, data, offset, len);

代码示例来源:origin: org.jboss.eap/wildfly-client-all

  1. public void run() {
  2. final byte receive_buf[]=new byte[66000]; // to be on the safe side (IPv6 == 65575 bytes, IPv4 = 65535)
  3. final DatagramPacket packet=new DatagramPacket(receive_buf, receive_buf.length);
  4. while(thread != null && Thread.currentThread().equals(thread)) {
  5. try {
  6. // solves Android ISSUE #24748 - DatagramPacket truncated UDP in ICS
  7. if(is_android)
  8. packet.setLength(receive_buf.length);
  9. receiver_socket.receive(packet);
  10. int len=packet.getLength();
  11. if(len > receive_buf.length && log.isErrorEnabled())
  12. log.error(Util.getMessage("SizeOfTheReceivedPacket"), len, receive_buf.length, receive_buf.length);
  13. receive(new IpAddress(packet.getAddress(), packet.getPort()),
  14. receive_buf, packet.getOffset(), len);
  15. }
  16. catch(SocketException sock_ex) {
  17. if(receiver_socket.isClosed()) {
  18. log.debug("receiver socket is closed, exception=" + sock_ex);
  19. break;
  20. }
  21. log.error(Util.getMessage("FailedReceivingPacket"), sock_ex);
  22. }
  23. catch(Throwable ex) {
  24. log.error(Util.getMessage("FailedReceivingPacket"), ex);
  25. }
  26. }
  27. if(log.isDebugEnabled()) log.debug(name + " thread terminated");
  28. }

相关文章