[ 
https://issues.apache.org/jira/browse/THRIFT-5620?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5620:
-------------------------------
    Description: 
Currently, the Delphi compiler generates code that uses TBytes and 
System.String types. Both use dynamically allocated memory.

Due to the way in which Delphi manages memory this implies, that such 
interfaces cannot be shared between modules unless ShareMem or some other 
shared memory manager is explicitly used in all affected modules, which is an 
undesirable option in certain cases for a number of reasons.

Goal of this ticket is to enable the Delphi code generator to either directly 
use COM types (e.g. System.WideString instead of System.String) or implement 
any other safe means where necessary to deal with this issue (and especially 
without the use of ShareMem or the like).

  was:
Currently, the Delphi compiler generates code that uses TBytes and 
System.String types. Both use dynamically allocated memory. 

Due to the way in which Delphi manages memory this implies, that such 
interfaces cannot be shared between modules unless ShareMem or some other 
shared memory manager is explicitly used in all affected modules, which is an 
undesirable option in certain cases for a number of reasons.

Goal of this ticket is to enable the Delphi code generator to either directly 
use COM types (e.g. System.WideString instead of System.String) or implement 
any other safe means where necessary.


> Option to force usage of COM types to allow for cross-module references
> -----------------------------------------------------------------------
>
>                 Key: THRIFT-5620
>                 URL: https://issues.apache.org/jira/browse/THRIFT-5620
>             Project: Thrift
>          Issue Type: New Feature
>          Components: Delphi - Compiler
>            Reporter: Jens Geyer
>            Assignee: Jens Geyer
>            Priority: Major
>
> Currently, the Delphi compiler generates code that uses TBytes and 
> System.String types. Both use dynamically allocated memory.
> Due to the way in which Delphi manages memory this implies, that such 
> interfaces cannot be shared between modules unless ShareMem or some other 
> shared memory manager is explicitly used in all affected modules, which is an 
> undesirable option in certain cases for a number of reasons.
> Goal of this ticket is to enable the Delphi code generator to either directly 
> use COM types (e.g. System.WideString instead of System.String) or implement 
> any other safe means where necessary to deal with this issue (and especially 
> without the use of ShareMem or the like).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to