# File lib/amq/client/async/exchange.rb, line 132
        def delete(if_unused = false, nowait = false, &block)
          @connection.send_frame(Protocol::Exchange::Delete.encode(@channel.id, @name, if_unused, nowait))

          unless nowait
            self.define_callback(:delete, &block)

            # TODO: delete itself from exchanges cache
            @channel.exchanges_awaiting_delete_ok.push(self)
          end

          self
        end