Go to the documentation of this file.
15 #ifndef GRPC_CORE_EXT_TRANSPORT_BINDER_WIRE_FORMAT_WIRE_WRITER_H
16 #define GRPC_CORE_EXT_TRANSPORT_BINDER_WIRE_FORMAT_WIRE_WRITER_H
24 #include "absl/container/flat_hash_map.h"
56 std::unique_ptr<Transaction>
tx;
113 std::queue<RunScheduledTxArgs*> pending_outgoing_tx_
127 #endif // GRPC_CORE_EXT_TRANSPORT_BINDER_WIRE_FORMAT_WIRE_WRITER_H
absl::Status RunStreamTx(RunScheduledTxArgs::StreamTx *stream_tx, WritableParcel *parcel, bool *is_last_chunk) ABSL_EXCLUSIVE_LOCKS_REQUIRED(write_mu_)
std::atomic_bool is_transacting_
static const int64_t kBlockSize
virtual void OnAckReceived(int64_t num_bytes)=0
absl::Status SendAck(int64_t num_bytes) override
absl::variant< AckTx, StreamTx > tx
void TryScheduleTransaction()
absl::Status RpcCallFastPath(std::unique_ptr< Transaction > tx)
#define ABSL_EXCLUSIVE_LOCKS_REQUIRED(...)
virtual absl::Status SendAck(int64_t num_bytes)=0
WireWriterImpl(std::unique_ptr< Binder > binder)
std::unique_ptr< Transaction > tx
static const int64_t kFlowControlWindowSize
void RunScheduledTxInternal(RunScheduledTxArgs *arg)
grpc_core::Mutex write_mu_
virtual ~WireWriter()=default
absl::Status MakeBinderTransaction(BinderTransportTxCode tx_code, std::function< absl::Status(WritableParcel *)> fill_parcel)
void OnAckReceived(int64_t num_bytes) override
~WireWriterImpl() override
absl::Status RpcCall(std::unique_ptr< Transaction > tx) override
std::unique_ptr< Binder > binder_ ABSL_GUARDED_BY(write_mu_)
grpc_core::Combiner * combiner_
std::atomic< int64_t > num_outgoing_bytes_
virtual absl::Status RpcCall(std::unique_ptr< Transaction > tx)=0
grpc_core::Mutex flow_control_mu_
grpc
Author(s):
autogenerated on Thu Mar 13 2025 03:01:52