~ubuntu-branches/ubuntu/saucy/zeromq3/saucy

« back to all changes in this revision

Viewing changes to doc/zmq_socket.html

  • Committer: Package Import Robot
  • Author(s): Alessandro Ghedini
  • Date: 2012-10-16 19:49:30 UTC
  • mfrom: (1.1.2)
  • Revision ID: package-import@ubuntu.com-20121016194930-98r0bi746eoaa4iv
Tags: 3.2.1~rc2+dfsg-1
* New upstream RC release (Closes: #690704)
* Bump Standards-Version to 3.9.4 (no changes needed)

Show diffs side-by-side

added added

removed removed

Lines of Context:
3
3
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
4
4
<head>
5
5
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />
6
 
<meta name="generator" content="AsciiDoc 8.6.4" />
 
6
<meta name="generator" content="AsciiDoc 8.6.6" />
7
7
<title>zmq_socket(3)</title>
8
8
<style type="text/css">
9
 
/* Sans-serif font. */
 
9
/* Shared CSS for AsciiDoc xhtml11 and html5 backends */
 
10
 
 
11
/* Default font. */
 
12
body {
 
13
  font-family: Georgia,serif;
 
14
}
 
15
 
 
16
/* Title font. */
10
17
h1, h2, h3, h4, h5, h6,
11
18
div.title, caption.title,
12
19
thead, p.table.header,
13
 
div#toctitle,
14
 
span#author, span#revnumber, span#revdate, span#revremark,
15
 
div#footer {
 
20
#toctitle,
 
21
#author, #revnumber, #revdate, #revremark,
 
22
#footer {
16
23
  font-family: Arial,Helvetica,sans-serif;
17
24
}
18
25
 
19
 
/* Serif font. */
20
 
div.sectionbody {
21
 
  font-family: Georgia,"Times New Roman",Times,serif;
22
 
}
23
 
 
24
 
/* Monospace font. */
25
 
tt {
26
 
  font-size: inherit;
27
 
}
28
 
 
29
26
body {
30
27
  margin: 1em 5% 1em 5%;
31
28
}
48
45
  color: #083194;
49
46
}
50
47
 
51
 
tt {
52
 
  font-size: inherit;
53
 
  color: navy;
54
 
}
55
 
 
56
48
h1, h2, h3, h4, h5, h6 {
57
49
  color: #527bbd;
58
50
  margin-top: 1.2em;
72
64
h3 + * {
73
65
  clear: left;
74
66
}
 
67
h5 {
 
68
  font-size: 1.0em;
 
69
}
75
70
 
76
71
div.sectionbody {
77
72
  margin-left: 0;
97
92
  margin: 0;
98
93
}
99
94
 
100
 
span#author {
 
95
#author {
101
96
  color: #527bbd;
102
97
  font-weight: bold;
103
98
  font-size: 1.1em;
104
99
}
105
 
span#email {
 
100
#email {
106
101
}
107
 
span#revnumber, span#revdate, span#revremark {
 
102
#revnumber, #revdate, #revremark {
108
103
}
109
104
 
110
 
div#footer {
 
105
#footer {
111
106
  font-size: small;
112
107
  border-top: 2px solid silver;
113
108
  padding-top: 0.5em;
114
109
  margin-top: 4.0em;
115
110
}
116
 
div#footer-text {
 
111
#footer-text {
117
112
  float: left;
118
113
  padding-bottom: 0.5em;
119
114
}
120
 
div#footer-badges {
 
115
#footer-badges {
121
116
  float: right;
122
117
  padding-bottom: 0.5em;
123
118
}
124
119
 
125
 
div#preamble {
 
120
#preamble {
126
121
  margin-top: 1.5em;
127
122
  margin-bottom: 1.5em;
128
123
}
129
 
div.tableblock, div.imageblock, div.exampleblock, div.verseblock,
 
124
div.imageblock, div.exampleblock, div.verseblock,
130
125
div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,
131
126
div.admonitionblock {
132
127
  margin-top: 1.0em;
184
179
  margin-left: 1.0em;
185
180
  margin-right: 10%;
186
181
  border-left: 5px solid #f0f0f0;
187
 
  color: #777777;
 
182
  color: #888;
188
183
}
189
184
 
190
185
div.quoteblock > div.attribution {
267
262
  margin-bottom: 0.1em;
268
263
}
269
264
 
270
 
div.tableblock > table {
271
 
  border: 3px solid #527bbd;
272
 
}
273
 
thead, p.table.header {
274
 
  font-weight: bold;
275
 
  color: #527bbd;
276
 
}
277
265
tfoot {
278
266
  font-weight: bold;
279
267
}
280
268
td > div.verse {
281
269
  white-space: pre;
282
270
}
283
 
p.table {
284
 
  margin-top: 0;
285
 
}
286
 
/* Because the table frame attribute is overriden by CSS in most browsers. */
287
 
div.tableblock > table[frame="void"] {
288
 
  border-style: none;
289
 
}
290
 
div.tableblock > table[frame="hsides"] {
291
 
  border-left-style: none;
292
 
  border-right-style: none;
293
 
}
294
 
div.tableblock > table[frame="vsides"] {
295
 
  border-top-style: none;
296
 
  border-bottom-style: none;
297
 
}
298
 
 
299
271
 
300
272
div.hdlist {
301
273
  margin-top: 0.8em;
362
334
}
363
335
 
364
336
@media print {
365
 
  div#footer-badges { display: none; }
 
337
  #footer-badges { display: none; }
366
338
}
367
339
 
368
 
div#toc {
 
340
#toc {
369
341
  margin-bottom: 2.5em;
370
342
}
371
343
 
372
 
div#toctitle {
 
344
#toctitle {
373
345
  color: #527bbd;
374
346
  font-size: 1.1em;
375
347
  font-weight: bold;
430
402
 
431
403
span.big { font-size: 2em; }
432
404
span.small { font-size: 0.6em; }
433
 
/* Overrides for manpage documents */
434
 
h1 {
 
405
 
 
406
span.underline { text-decoration: underline; }
 
407
span.overline { text-decoration: overline; }
 
408
span.line-through { text-decoration: line-through; }
 
409
 
 
410
 
 
411
/*
 
412
 * xhtml11 specific
 
413
 *
 
414
 * */
 
415
 
 
416
tt {
 
417
  font-family: monospace;
 
418
  font-size: inherit;
 
419
  color: navy;
 
420
}
 
421
 
 
422
div.tableblock {
 
423
  margin-top: 1.0em;
 
424
  margin-bottom: 1.5em;
 
425
}
 
426
div.tableblock > table {
 
427
  border: 3px solid #527bbd;
 
428
}
 
429
thead, p.table.header {
 
430
  font-weight: bold;
 
431
  color: #527bbd;
 
432
}
 
433
p.table {
 
434
  margin-top: 0;
 
435
}
 
436
/* Because the table frame attribute is overriden by CSS in most browsers. */
 
437
div.tableblock > table[frame="void"] {
 
438
  border-style: none;
 
439
}
 
440
div.tableblock > table[frame="hsides"] {
 
441
  border-left-style: none;
 
442
  border-right-style: none;
 
443
}
 
444
div.tableblock > table[frame="vsides"] {
 
445
  border-top-style: none;
 
446
  border-bottom-style: none;
 
447
}
 
448
 
 
449
 
 
450
/*
 
451
 * html5 specific
 
452
 *
 
453
 * */
 
454
 
 
455
.monospaced {
 
456
  font-family: monospace;
 
457
  font-size: inherit;
 
458
  color: navy;
 
459
}
 
460
 
 
461
table.tableblock {
 
462
  margin-top: 1.0em;
 
463
  margin-bottom: 1.5em;
 
464
}
 
465
thead, p.tableblock.header {
 
466
  font-weight: bold;
 
467
  color: #527bbd;
 
468
}
 
469
p.tableblock {
 
470
  margin-top: 0;
 
471
}
 
472
table.tableblock {
 
473
  border-width: 3px;
 
474
  border-spacing: 0px;
 
475
  border-style: solid;
 
476
  border-color: #527bbd;
 
477
  border-collapse: collapse;
 
478
}
 
479
th.tableblock, td.tableblock {
 
480
  border-width: 1px;
 
481
  padding: 4px;
 
482
  border-style: solid;
 
483
  border-color: #527bbd;
 
484
}
 
485
 
 
486
table.tableblock.frame-topbot {
 
487
  border-left-style: hidden;
 
488
  border-right-style: hidden;
 
489
}
 
490
table.tableblock.frame-sides {
 
491
  border-top-style: hidden;
 
492
  border-bottom-style: hidden;
 
493
}
 
494
table.tableblock.frame-none {
 
495
  border-style: hidden;
 
496
}
 
497
 
 
498
th.tableblock.halign-left, td.tableblock.halign-left {
 
499
  text-align: left;
 
500
}
 
501
th.tableblock.halign-center, td.tableblock.halign-center {
 
502
  text-align: center;
 
503
}
 
504
th.tableblock.halign-right, td.tableblock.halign-right {
 
505
  text-align: right;
 
506
}
 
507
 
 
508
th.tableblock.valign-top, td.tableblock.valign-top {
 
509
  vertical-align: top;
 
510
}
 
511
th.tableblock.valign-middle, td.tableblock.valign-middle {
 
512
  vertical-align: middle;
 
513
}
 
514
th.tableblock.valign-bottom, td.tableblock.valign-bottom {
 
515
  vertical-align: bottom;
 
516
}
 
517
 
 
518
 
 
519
/*
 
520
 * manpage specific
 
521
 *
 
522
 * */
 
523
 
 
524
body.manpage h1 {
435
525
  padding-top: 0.5em;
436
526
  padding-bottom: 0.5em;
437
527
  border-top: 2px solid silver;
438
528
  border-bottom: 2px solid silver;
439
529
}
440
 
h2 {
 
530
body.manpage h2 {
441
531
  border-style: none;
442
532
}
443
 
div.sectionbody {
444
 
  margin-left: 5%;
 
533
body.manpage div.sectionbody {
 
534
  margin-left: 3em;
445
535
}
446
536
 
447
537
@media print {
448
 
  div#toc { display: none; }
 
538
  body.manpage div#toc { display: none; }
449
539
}
450
 
 
451
540
</style>
452
541
<script type="text/javascript">
453
542
/*<![CDATA[*/
454
 
window.onload = function(){asciidoc.footnotes();}
455
543
var asciidoc = {  // Namespace.
456
544
 
457
545
/////////////////////////////////////////////////////////////////////
513
601
  }
514
602
 
515
603
  var toc = document.getElementById("toc");
 
604
  if (!toc) {
 
605
    return;
 
606
  }
 
607
 
 
608
  // Delete existing TOC entries in case we're reloading the TOC.
 
609
  var tocEntriesToRemove = [];
 
610
  var i;
 
611
  for (i = 0; i < toc.childNodes.length; i++) {
 
612
    var entry = toc.childNodes[i];
 
613
    if (entry.nodeName == 'div'
 
614
     && entry.getAttribute("class")
 
615
     && entry.getAttribute("class").match(/^toclevel/))
 
616
      tocEntriesToRemove.push(entry);
 
617
  }
 
618
  for (i = 0; i < tocEntriesToRemove.length; i++) {
 
619
    toc.removeChild(tocEntriesToRemove[i]);
 
620
  }
 
621
 
 
622
  // Rebuild TOC entries.
516
623
  var entries = tocEntries(document.getElementById("content"), toclevels);
517
624
  for (var i = 0; i < entries.length; ++i) {
518
625
    var entry = entries[i];
540
647
 */
541
648
 
542
649
footnotes: function () {
 
650
  // Delete existing footnote entries in case we're reloading the footnodes.
 
651
  var i;
 
652
  var noteholder = document.getElementById("footnotes");
 
653
  if (!noteholder) {
 
654
    return;
 
655
  }
 
656
  var entriesToRemove = [];
 
657
  for (i = 0; i < noteholder.childNodes.length; i++) {
 
658
    var entry = noteholder.childNodes[i];
 
659
    if (entry.nodeName == 'div' && entry.getAttribute("class") == "footnote")
 
660
      entriesToRemove.push(entry);
 
661
  }
 
662
  for (i = 0; i < entriesToRemove.length; i++) {
 
663
    noteholder.removeChild(entriesToRemove[i]);
 
664
  }
 
665
 
 
666
  // Rebuild footnote entries.
543
667
  var cont = document.getElementById("content");
544
 
  var noteholder = document.getElementById("footnotes");
545
668
  var spans = cont.getElementsByTagName("span");
546
669
  var refs = {};
547
670
  var n = 0;
548
671
  for (i=0; i<spans.length; i++) {
549
672
    if (spans[i].className == "footnote") {
550
673
      n++;
551
 
      // Use [\s\S] in place of . so multi-line matches work.
552
 
      // Because JavaScript has no s (dotall) regex flag.
553
 
      note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1];
 
674
      var note = spans[i].getAttribute("data-note");
 
675
      if (!note) {
 
676
        // Use [\s\S] in place of . so multi-line matches work.
 
677
        // Because JavaScript has no s (dotall) regex flag.
 
678
        note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1];
 
679
        spans[i].innerHTML =
 
680
          "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n +
 
681
          "' title='View footnote' class='footnote'>" + n + "</a>]";
 
682
        spans[i].setAttribute("data-note", note);
 
683
      }
554
684
      noteholder.innerHTML +=
555
685
        "<div class='footnote' id='_footnote_" + n + "'>" +
556
686
        "<a href='#_footnoteref_" + n + "' title='Return to text'>" +
557
687
        n + "</a>. " + note + "</div>";
558
 
      spans[i].innerHTML =
559
 
        "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n +
560
 
        "' title='View footnote' class='footnote'>" + n + "</a>]";
561
688
      var id =spans[i].getAttribute("id");
562
689
      if (id != null) refs["#"+id] = n;
563
690
    }
577
704
      }
578
705
    }
579
706
  }
580
 
}
581
 
 
582
 
}
 
707
},
 
708
 
 
709
install: function(toclevels) {
 
710
  var timerId;
 
711
 
 
712
  function reinstall() {
 
713
    asciidoc.footnotes();
 
714
    if (toclevels) {
 
715
      asciidoc.toc(toclevels);
 
716
    }
 
717
  }
 
718
 
 
719
  function reinstallAndRemoveTimer() {
 
720
    clearInterval(timerId);
 
721
    reinstall();
 
722
  }
 
723
 
 
724
  timerId = setInterval(reinstall, 500);
 
725
  if (document.addEventListener)
 
726
    document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false);
 
727
  else
 
728
    window.onload = reinstallAndRemoveTimer;
 
729
}
 
730
 
 
731
}
 
732
asciidoc.install();
583
733
/*]]>*/
584
734
</script>
585
735
</head>
894
1044
from among all connected peers. When sending messages a <em>ZMQ_ROUTER</em> socket shall
895
1045
remove the first part of the message and use it to determine the <em>identity</em> of
896
1046
the peer the message shall be routed to. If the peer does not exist anymore
897
 
the message shall be silently discarded.</p></div>
 
1047
the message shall be silently discarded by default, unless <em>ZMQ_ROUTER_BEHAVIOR</em>
 
1048
socket option is set to <em>1</em>.</p></div>
898
1049
<div class="paragraph"><p>When a <em>ZMQ_ROUTER</em> socket enters an exceptional state due to having reached the
899
 
high water mark for all peers, or if there are no peers at all, then any
900
 
messages sent to the socket shall be dropped until the exceptional state ends.
901
 
Likewise, any messages routed to a non-existent peer or a peer for which the
902
 
individual high water mark has been reached shall also be dropped.</p></div>
 
1050
high water mark for all peers, then any messages sent to the socket shall be dropped
 
1051
until the exceptional state ends. Likewise, any messages routed to a peer for which
 
1052
the individual high water mark has been reached shall also be dropped.</p></div>
903
1053
<div class="paragraph"><p>When a <em>ZMQ_REQ</em> socket is connected to a <em>ZMQ_ROUTER</em> socket, in addition to the
904
1054
<em>identity</em> of the originating peer each message received shall contain an empty
905
1055
<em>delimiter</em> message part. Hence, the entire structure of each received message
915
1065
</td>
916
1066
<td class="hdlist2">
917
1067
<p style="margin-top: 0;">
918
 
<em>ZMQ_DEALER</em>, 'ZMQ_REQ
 
1068
<em>ZMQ_DEALER</em>, <em>ZMQ_REQ</em>
919
1069
</p>
920
1070
</td>
921
1071
</tr>
1440
1590
</td>
1441
1591
<td class="hdlist2">
1442
1592
<p style="margin-top: 0;">
1443
 
N/A
 
1593
Block
1444
1594
</p>
1445
1595
</td>
1446
1596
</tr>
1615
1765
<div id="footnotes"><hr /></div>
1616
1766
<div id="footer">
1617
1767
<div id="footer-text">
1618
 
ØMQ 3.2.0<br />
1619
 
Last updated 2012-06-05 09:39:30 CEST
 
1768
ØMQ 3.2.1<br />
 
1769
Last updated 2012-10-15 12:58:09 KST
1620
1770
</div>
1621
1771
</div>
1622
1772
</body>